草庐IT

Instrumentation

全部标签

android - 我们可以在 Android 应用程序中使用 UIAutomator 吗?

我想知道我们可以在我们的应用程序中使用UIAutomator吗?我想编写一个打开另一个应用程序的应用程序,在该应用程序EditText中写一些文本,然后按一些按钮(比如打开环聊并在其上写一个文本并发送消息)。你能建议我该怎么做吗?我在网上搜索过,我只能发现我可以用UIAutomator测试我的UI,但我不知道我是否可以用它来编写一个Android应用程序(不是jar文件)并在我的Android设备上运行它做这个。 最佳答案 这是不可能的。UiAutomator2.0依赖Instrumentation这仅在您使用aminstrumen

java - 尝试运行简单的 Android JUnit 测试。获取 : "Test run failed: No test results" What am I missing?

我以前从未使用过JUnit,现在我正在尝试在Android项目上设置它。我的测试项目相当复杂,包括一些JNI,但目前我的测试项目完全微不足道。我在网上找到了很多关于如何制作测试项目的示例(看起来完全不同),但似乎无论我遵循哪个,我得到的结果都是一样的。这是我的JUnit项目代码:packagecom.mycompany.myproject.test;importandroid.test.AndroidTestCase;publicclassSimpleTestCaseExampleextendsAndroidTestCase{publicvoidtest_testOne(){fail(

android - Google Play Services 9.2.0 导致设备在没有 Google Play Services 的情况下意外崩溃 - NPE at android.app.Instrumentation.execStartActivity

以前,我使用以下GooglePlayServices8.4.0compile'com.google.android.gms:play-services-gcm:8.4.0'compile'com.google.android.gms:play-services-base:8.4.0'compile'com.google.android.gms:play-services-analytics:8.4.0'compile'com.google.android.gms:play-services-ads:8.4.0'compile'com.google.android.gms:play-se

android - 集成测试和 Cucumber 测试

我有一个项目,我正在使用AndroidJunitRunner运行android仪器测试。我现在正在使用Cucumber添加UI自动化测试。如何保留使用扩展MonitoringInstrumentation的运行程序的Cucumber测试和使用扩展`AndroidJunitRunner的运行程序的其他仪器测试?在build.gradle我曾经有过testInstrumentationRunner"com.packagename.packagename2.MockedTestRunner"现在我有:testApplicationId"com.packagename.packagename2

java.lang.IllegalStateException : No instrumentation registered! 必须在注册工具下运行

我一直在尝试使用Espresso执行简单的UI测试,但我的所有测试都因相同的异常而失败:java.lang.IllegalStateException:Noinstrumentationregistered!Mustrununderaregisteringinstrumentation这是使用esspresso的初学者指南here.我已经找到了类似的问题,但与我最相关的问题没有得到解答here-我想这是因为他们没有画出全貌,所以这是我的代码。我只会展示一个测试,因为它们都以完全相同的错误失败:build.gradle(Module:app)applyplugin:'com.androi

android - 在 TestCase 中启动第二个 Activity (这不是被测 Activity )

如何在ActivityInstrumentationTestCase2或InstrumentationTestCase中启动第二个(模拟)Activity?我的问题是:Intentintent=newIntent(getInstrumentation().getContext(),MyMock.class);myMock=(MyMock)getInstrumentation().startActivitySync(intent);...导致错误“进程中的Intent...解析为不同的进程...测试”。对Intent使用getTargetContext()会导致“无法解析IntentAc

android - Instrumentation.ActivityMonitor 不监控 Intent.ACTION_CALL

我有一个简单的测试用例,用于测试是否在单击按钮时启动拨出电话。publicvoidtestCalling(){IntentFiltercallFilter=newIntentFilter();callFilter.addAction(Intent.ACTION_CALL);callFilter.addCategory(Intent.CATEGORY_DEFAULT);callFilter.addDataScheme("tel:");ActivityMonitormMonitor=newActivityMonitor(callFilter,null,false);getInstrumen

android - Root设备的 INJECT_EVENTS 权限

我正在尝试在我的应用程序中实现一种vnc(基于oNaiPs的droid-vnc-server)。由于鼠标事件不适用于我的设备,我正在尝试以下操作:从nativevnc帧缓冲服务器发送数据报,在Service中捕获它们并使用Instrumentation的sendPointerSync。这就是需要许可的地方。我听说如果你使用RootExploter、chmod和reset将.apk推送到/system/app,你可以获得所有需要的权限,但这对我来说不起作用,我仍然得到安全异常。我也尝试过手动编辑/data/system/packages.xml文件。是否有任何其他方式来获得许可(也许以某

android - 如何通过使用 Robotium 调用 onDestroy 来自动测试 onResume 行为?

我正在使用Robotium对Android应用程序进行功能测试。我想在调用onDestroy之后测试onResume行为。Thispost关于使用Instrumentation的提示,但我无法让它工作。我已经包含了以下内容,但是失败并出现IllegalStateException。是否可以销毁应用程序并重新启动它?publicclassMainActivityFunctionalTestextendsActivityInstrumentationTestCase2{privateSolosolo;publicMainActivityFunctionalTest(){super(Main

android - 如何以编程方式按下android的物理按钮

我想以编程方式按下音量按钮。在Java中可以使用机器人类,但在Android中没有机器人类。我想知道如何在Android中实现这一点。 最佳答案 我建议你以编程方式增加/减少音量,这会更容易一些,但是如果你想将它用于其他一些过程,那么你可以检查下面的代码-编辑-我之前给出的fragment不起作用,但这个fragment有效。它使用可运行的,因此trycatchblock是必需的。newThread(newRunnable(){@Overridepublicvoidrun(){try{Instrumentationinst=newI