使用 Espresso for APK 编写 UI 测试,无需源代码

Posted

技术标签:

【中文标题】使用 Espresso for APK 编写 UI 测试,无需源代码【英文标题】:Writing UI tests using Espresso for APK without source code 【发布时间】:2019-07-01 17:49:15 【问题描述】:

我正在尝试使用 Espresso 为 APK 编写 UI 测试,但我没有源代码。我正在尝试使用类路径初始化ActivityTestRule

我关注了这个article

  private static final String CLASSNAME = "com.mytaxi.android_demo.activities.AuthenticationActivity";
  private static Class<? extends Activity>  activityClass = (Class<? extends Activity>) Class.forName(CLASSNAME);
  @Rule
  public ActivityTestRule<?> mActivityRule = newActivityTestRule(CLASSNAME);

但我发现了这个异常“java.lang.RuntimeException:未找到活动”

【问题讨论】:

【参考方案1】:

很有可能,此 APK 受 proguard 保护。所以类/包名称目前被混淆了。换句话说,名称目前不同。

尝试改用Monkey Runner

【讨论】:

以上是关于使用 Espresso for APK 编写 UI 测试,无需源代码的主要内容,如果未能解决你的问题,请参考以下文章

Android Espresso apk 文件及其 sdk 版本

Espresso - 使用异步加载的数据断言 TextView

AsyncTask 运行时 Espresso 测试返回按钮

从 Maps Intent espresso 回到活动 - UI 测试

回到地图意图espresso - UI测试的活动

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