问题标签 [android-instrumentation]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
168 浏览

android - com.robotium.solo.Solo#clickOnView 与 android.view.View#performClick

在仪器测试中,我应该使用com.robotium.solo.Solo#clickOnVieworandroid.view.View#performClick吗?

这两个函数都需要 View 对象。检查 javadoc 和源代码,功能相似。

但实现方式大相径庭

  • android.view.View#performClick调用sendAccessibilityEvent然后注册事件监听器。
  • com.robotium.solo.Solo#clickOnView(android.view.View)在给定的屏幕坐标上模拟实际的手指点击(发送 MotionEvent)。

在什么情况下我应该使用robotium功能?看起来它只是一种更慢、更脆弱的方式,可以得到完全相同的最终结果,比如android.view.View#performClick.

0 投票
1 回答
1027 浏览

android - 如何使用 UiAutomation 点击​​ Android 中的按钮?

我想为一些Android UI测试做UiAutomation,比如打开Wifi,并在提示输入Wifi用户名和密码时在文本字段中输入一些文本:http ://android.zedcn.com/reference/android/app/UiAutomation.html

如何调用 UiAutomation 类中的方法来完成此操作?1) 单击设置应用程序 2) 单击 Wifi 的切换图标 3) 单击网络 SSID 4) 在文本字段中输入用户名和密码

我很乐意获得一些入门提示。

0 投票
7 回答
21751 浏览

testing - Android:仪器运行因“java.lang.ClassNotFoundException”而失败:未找到测试

我尝试通过“gradlew connectedAndroidTest”运行仪器测试。我收到以下错误:

这是带有 --stacktrace 选项的输出:

我的AndroidManifest.xml

我的build.gradle

我的测试课

任何想法?

0 投票
1 回答
201 浏览

android - Android 检查本机活动是否已启动

我正在尝试测试我的应用程序是否已正确启动 Android Dialer 应用程序。

根据我对单元测试和仪器的发现,我创建了这个测试:

但这总是返回 AssertionFailedError。

我也尝试过设置 to 的第一个参数addMonitor()IntentFilter.create(Intent.ACTION_DIAL, "vnd.android.cursor.dir/calls")但这给了我同样的错误。此外,我一直在寻找其他要使用的 MimeType,但没有找到任何(看起来拨号器不使用 MimeType)。

我应该如何检查拨号程序是否已启动?

0 投票
0 回答
78 浏览

android - 位于测试 AndroidManifest 中的测试活动

我需要测试 Activity (其中的视图,更具体)。但我无法正确测试它,因为它绑定到影响我的测试的服务。所以我想创建测试活动,用重写的 bindService 扩展原始活动。问题是我不想将此测试活动放在主 AndroidManifest.xml 中。我想把它保存在 .../tests/AndroidManifest.xml 中。但在那之后,每次我在我的

它说:

所以问题是:是否有可能实现这个技巧?

0 投票
2 回答
332 浏览

android - 提供测试 Android 应用程序的解决方案

我刚刚浏览了大约 10 部 Android 书籍,阅读了一堆文章并找到了几个框架,但我仍然没有找到任何测试 Android 应用程序的综合方法。
测试只出现在某些书中(如果有的话),这太糟糕了。

有:

但是它们都没有足够的文档、教程或示例。我也无法使用 Gradle 设置 Robotium 以从 AS 甚至命令行运行。

Android Studio 1.0使用和测试 Android 应用程序的最新方法是什么Gradle 1.0.0?你使用什么框架和工具?你在哪里学习 Android 的测试方法?

我唯一设法设置的是用于测试应用程序的标准 android 方法,但是如何做到这一点的示例很少。

0 投票
1 回答
1011 浏览

gradle - Espresso + RoboBinding + Dagger:使用 gradle 进行依赖管理

在 Android Studio 中运行 Espresso 仪器测试时遇到了很大困难。

我认为这与我的build.gradle 有关

当我使用此版本的 build.gradle 运行仪器测试时,出现以下错误:

当我删除androidTestCompile "javax.inject:javax.inject:${javaxinjectVersion}",我得到另一个错误:

非常感谢,如果有人可以给我一个提示。

0 投票
1 回答
50 浏览

maven - 如何将 gradle 项目与基于 Eclipse(maven)的仪器测试集成

我在 AndroidStudio 中有一个 android 项目,但我们必须将 Instrumentation 测试外包给 Eclipse(由 maven 构建的简单 Java 项目)。我不想讲述整个开发和质量保证的故事,我只是想问任何人都可以告诉我,我可以将一个独立于 Maven 的仪器测试项目与我的基于 Android Studio 的项目集成在一起吗?

0 投票
1 回答
830 浏览

android - Android仪器测试:java.lang.RuntimeException:java.lang.NoClassDefFoundError:com.google.common.base.Optional

当我运行 Android 仪器测试时,为什么会出现此异常?

这是我的 build.gradle:

这是我的代码中引发异常的行:

它可能与番石榴有关,但我不知道如何正确包含和/或排除它。

提前谢谢了!

0 投票
0 回答
421 浏览

android - Android 在非活动单元测试中的上下文

我要测试我的单例OcRequestQueue.java类,我想成为 Volley 的持久应用程序的生命周期RequestQueue。问题是它需要context超出类范围的应用程序,因为我想实现单独的表示层和数据层,并且OcRequestQueue.java在第二个中。表示层还没有实现,所以我想对我所做的进行单元测试,所以我想得到contextfrom InstrumentationTestCase,但我得到的只是!! JUnit version 3.8 or later expected. 如何对不扩展的类执行单元测试Activity

com.data.OcRequestQueue.java

com.data.test.OcRequestQueueTest.java

bulid.gardle