【发布时间】:2016-02-17 10:45:03
【问题描述】:
我知道这方面有很多问题,但我找不到任何可以帮助我的东西:(
我尝试使用 Espresso 为 Android 应用程序生成 UI-Test。在解决了依赖问题之后(因为某些库在不同版本中被包含两次作为来自其他库的依赖)我仍然无法创建工作测试......
我知道 IdlingResource,但在阅读时,espresso 开箱即用,直到主线程和 AsyncTaskPool 在运行任何测试之前处于空闲状态。
为了与它取得联系,我创建了一个简单的应用程序,其中包含两个活动,一个闪屏和一个主活动。 启动画面包含类似这样的内容,用于在启动 mainActivity 之前等待三秒
new Handler().postDelayed(new Runnable() {
@Override
public void run() {
finish();
Intent intent = new Intent(SplashScreenActivity.this, MainActivity.class);
startActivity(intent);
}
}, 3000);
我也尝试为此使用 AsyncTask,但似乎没有任何工作正常,因为每个测试都失败了。
测试只检查包含定义文本的 TextView 是否显示在视图上:
onView(withText("DummyText")).check(matches(notNullValue()));
我认为创建一个简单的测试不会那么难......
因为我必须针对 api 进行测试>=16 我需要浓缩咖啡。就我而言,我使用 uiAutomator 进行了检查(我知道它适用于 api >=18),但是有一种智能逻辑可以等待显示某些内容……而且效果很好……
【问题讨论】:
标签: android testing automated-tests android-espresso android-uiautomator