在ANDROID STUDIO环境下使用ESPRESSO 测试框架进行UI测试

package com.example.test;

import android.support.test.filters.LargeTest;
import android.support.test.rule.ActivityTestRule;
import android.support.test.runner.AndroidJUnit4;

import org.junit.Rule;
import org.junit.Test;
import org.junit.runner.RunWith;

import static android.support.test.espresso.Espresso.onView;
import static android.support.test.espresso.action.ViewActions.click;
import static android.support.test.espresso.action.ViewActions.closeSoftKeyboard;
import static android.support.test.espresso.action.ViewActions.typeText;
import static android.support.test.espresso.assertion.ViewAssertions.matches;
import static android.support.test.espresso.matcher.ViewMatchers.withId;
import static android.support.test.espresso.matcher.ViewMatchers.withText;

@RunWith(AndroidJUnit4.class)
@LargeTest
public class MainActivityInstrumentedTest {
private static final String STRING_To_Be_TYPED = "him";
//要写入的内容
@Rule
public ActivityTestRule<MainActivity> mainActivityTestRule = new ActivityTestRule<MainActivity>(MainActivity.class);

@Test
public void sayhello() {
onView(withId(R.id.editText)).perform(typeText(STRING_To_Be_TYPED), closeSoftKeyboard());
//获取editText的id,并将值写入
onView(withText("say hello")).perform(click());
//通过控件的文字定位按钮,并实现点击操作
String expectedText = "Hello," + STRING_To_Be_TYPED + "!";
//正确的输出内容
onView(withId(R.id.textView)).check(matches(withText(expectedText)));
//获取TextView的id,比对控件上的文字是否一致
}
}

时间: 2024-12-24 15:50:36

在ANDROID STUDIO环境下使用ESPRESSO 测试框架进行UI测试的相关文章

Android Studio环境下代码混淆+签名打包

Android Studio环境下代码混淆+签名打包 作者 Mr_冯先生 关注 2016.08.21 01:10 字数 1040 阅读 734评论 5喜欢 34 注:本文使用的Android Studio版本是 2.1.2. 做公司项目,需要对项目进行代码混淆+签名打包,然后就各种搜集查看资料,算是小有成果吧.周末无事就想着总结一下以后再用可做参考.如有不对的地方烦请各位大神指导-- 一.代码混淆 android studio进行代码混淆需要在两个地方做配置:1.添加自己的混淆规则到对应Modu

Android studio环境下的 NDK(jni)开发

前言 1.什么是NDK? NDK全称是Native Development Kit,NDK提供了一系列的工具,帮助开发者快速开发C(或C++)的动态库,并能自动将so和java应用一起打包成apk.NDK集成了交叉编译器(交叉编译器需要UNIX或LINUX系统环境),并提供了相应的mk文件隔离CPU.平台.ABI等差异,开发人员只需要简单修改mk文件(指出"哪些文件需要编译"."编译特性要求"等),就可以创建出so. 2.为什么使用NDK? 1.代码的保护.由于ap

在ANDROID STUDIO环境下使用JUNIT框架进行单元测试

dependencies { compile fileTree(dir: 'libs', include: ['*.jar']) androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', { exclude group: 'com.android.support', module: 'support-annotations' }) compile 'com.android.support:appcomp

android studio环境下创建menu问题(标题栏显示问题)

在创建menu时,在虚拟设备上回显示menu(三个点,如图1),但是在安卓真机上可能会出现不会显示的情况. (图1) 原因是因为安卓系统现在都默认隐藏标题栏,所以menu就不会显示出来. 有两种方法可以解决这一问题: 方法一:在onCreate()函数后面添加显示标题栏代码:setContentView(R.layout.xxx_layout); 如果仍未解决问题,查看自己的活动类的继承问题,如果发现类开头是这样:Public class xxx extends activity(){...}.

在Android studio环境下使用EventBus

EventBus是一个订阅/发布消息总线,实现在应用程序里面,组件之间,线程之间的通信.因为event是任意的类型,所以这个使用起来非常方便. eventbus中的角色: event:当然就是事件啦 subscriber:事件的订阅者,先注册,接收特定的对象,并通过onEventXXX()来回收处理事件. Publisher:事件的发布者,通过post发布信息. 处理过程主要分为5步: 1.定义一个事件(event) 2.注册一个订阅者 3.发布一个事件 4.接收处理一个事件 5.注销一个订阅者

Android Studio环境搭建

Android Studio环境搭建 个人博客 欢迎大家多多关注该独立博客: ###[csdn博客](http://blog.csdn.net/peace1213) ?一直想把自己的经验分享出来,记得上次写博客还是ok6410的笔记,感觉时代久远啊.记得那个时候我还一心想搞硬件了.现在重新出山,希望自己能够坚持.其实我真是个小白.只是把自己碰到的问题拿出来分享:不喜勿喷哦. ?今天本来是我昨天规定要写的一篇文章,无奈今天倒弄hexo个人博客,搞得今天一天时间过去了.诶诶..后面会将hexo的用法

1.Android Studio 环境搭建并配置Genymotion

-----------android培训.java培训.java学习型技术博客.期待与您交流!------------ 一.Android Studio的引入: 2013年GoogleI/O大会首次发布了Android Studio IDE(Android平台集成开发环境).它基于Intellij IDEA开发环境,旨在取代Eclipse和ADT(Android开发者工具)为开发者提供更好的开发工具.既然Google一直在努力推广,相信不久以后就有望赶上Eclipse. 相比Eclipse,An

【Mac + Android】之Android Studio 环境搭建,AVD模拟器运行(包括Genymotion模拟器插件配置运行)

参考主要: <Mac android studio 环境搭建和真机运行> <如何在mac本上安装android sdk> <mac系统下android studio创建手机模拟器> 参考次要: <mac机中使用命令行方式启动android sdk manager> <如何在Mac中使用Android SDK> <Mac上运行安卓手机模拟器> 其他参考: Windows: <Android SDK Manager 和 AVD Ma

Android/NDK环境下FFmpeg及AAC,MP3,X264的编译

本篇介绍在Android/Ndk环境下FFmpeg的编译及使用, FFmpeg自带了H264.AAC.MP3的解码器,但却没有(或没有好的)相应的编码器.相应的编码器需要使用第三方库.推荐使用的第三方库为x264(H264编码) .FDK_AAC(AAC编码),lame(MP3编码). 在顺序上,应该先编译好第三方库,最后再编译FFmpeg库. [本书说明:本文作者:邵发,本文选自<FFmpeg视音频编程指南>.有关本书的详细信息请访问官网:http://www.afanihao.cn ] [