jjzjj

Robotium

全部标签

android - 无法仅使用 APK 在 Android Studio 上运行 Robotium

在Robotium的描述中,它说它能够仅使用APK测试Android项目。我能够在Eclipse中执行此操作,但我似乎无法在AndroidStudio中执行此操作。当从Eclipse获取相同的代码并在AndroidStudio中使用它时,我无法为我尝试测试的应用程序加载启动器类。有人知道吗? 最佳答案 我建议您试用适用于AndroidStudio的RobotiumRecorder。它将为APK:s创建测试项目。你可以检查它是如何做到的,然后按照你自己的方式去做。 关于android-无法

android - "Test failed to run to completion. Reason: ' 运行多个测试用例时由于 'Process crashed.' 导致仪器运行失败

我写了一个测试项目来测试一个android应用程序(ApplicationUnderTest是我自己的项目)。我在控制台和JunitView中遇到以下故障。测试未能完成。原因:“由于‘进程崩溃’,检测运行失败。”。检查设备日志猫以获取详细信息但是log-cat没有任何异常。日志似乎与应用程序的成功简单运行相同。当我调试测试时,它在以下行的teardown()方法中失败:solo.finishOpenedActivities();但是log-cat上没有任何反射(reflect)。此外,对于所有测试运行,这种失败并不一致。有时它在第一个测试用例之后失败,有时在第一个测试用例之前失败。pu

android - 使用 robotium 发送回车键进行 Android 测试?

我正在使用Robotium进行安卓测试。我有一个功能,如果用户在编辑文本字段中输入内容,然后按下回车键,他将被带到下一个字段。现在要在Robotium中对此进行测试,我可以将文本插入到文本字段中。但我不知道如何在Robotium中模拟回车键。如果有人对此有任何想法,请告诉我。另外让我知道除了Robotium之外是否还有其他更好的测试方法?感谢您的帮助和时间。 最佳答案 publicclassMyActivityViewTestextendsActivityInstrumentationTestCase2{privateSolosol

android - 测试时卸载应用程序

我刚开始使用Robotium在Android中进行测试。在运行某些测试之前,如何以编程方式卸载然后安装应用程序?例如,为了让我测试登录Activity,我需要确保登录凭据不会从应用程序的先前运行中保存下来。或者还有其他方法吗? 最佳答案 您可以使用以下代码(在您正在调试的机器上)卸载您的应用程序:Runtimert=Runtime.getRuntime();Processpr=rt.exec("adbuninstallyour.package");pr.waitFor(); 关于andr

Android 测试使用 logcat 进行事件捕获

我已经用谷歌搜索这个问题几个小时了,但我很困惑。我正在尝试为Android设备编写一个综合测试套件,我的第一个想法是使用logcat输出来验证测试结果。Logcat拥有我需要的来自操作系统和我们的应用程序的所有事件信息。使用Robotium或Monkeyrunner,我发现无法即时访问logcat。创建一个外部应用程序来监控logcat是不可能的(很难将事件同步到结果)。有什么想法吗? 最佳答案 试试这个。将以下权限添加到您的Robotiumlist文件:然后在您的设置方法中创建一个线程,并让它执行以下操作:Processproc=

android - 在 Android 中启用 Robotium

我最近决定从Eclipse切换到AndroidStudio。虽然我能够导入我的android项目,但我在设置和传输我的单元测试时一直遇到问题。出于测试目的,我在src文件夹(java文件夹和测试包)中创建了一个目录。为了启用robotium,我通过添加androidTestCompile'com.jayway.android.robotium:robotium-solo:5.2.1'关注另一个堆栈主题。最后我从Eclipse添加了我的测试java文件。当我尝试运行测试时,我不断收到“无法解析符号Solo”。我对AS和gradle的工作原理知之甚少,所以我可能还遗漏了其他东西。我的bui

Android 测试 - ActivityInstrumentationTestCase2 有问题吗?

我正在使用Robotium和ActivityInstrumentationTestCase2为Android运行UIAutomation。我有一个包含5个测试的测试套件。有时我的测试随机崩溃,因为测试开始,一旦前一个测试尚未结束。有没有办法避免这种情况?是否可以在每次测试之前手动添加10秒的延迟以摆脱这个可怕的恼人错误?编辑:publicclassMyTestextendsActivityInstrumentationTestCase2{protectedSolosolo;@OverrideprotectedvoidsetUp()throwsException{super.setUp(

Android Robotium - 如何管理测试用例的执行顺序?

我正在尝试使用Robotium来自动化应用程序的测试。测试用例已记录在案,并且应该按特定顺序进行测试。但似乎Junit按字母顺序运行测试。我如何重新排列执行顺序?这是我的测试类的基本结构:publicclassETTerminalTestextendsActivityInstrumentationTestCase2{privateSolosolo;privatestaticfinalLoggerLOGGER=LoggerFactory.getLogger(ETTerminalTest.class);publicETTerminalTest(){super("com.employtouc

android - Robotium测试如何点击软键盘 'search'按钮?

我想用Robotium测试下一件事:在搜索字段中输入一些文本,我这样做了,然后单击软键盘“搜索”按钮(android:imeOptions=actionSearch),但我没有这样做。我尝试使用solo.sendKey(Solo.Enter)但没有成功。我不确定这是否重要,但根本没有显示软键盘-我试图以某种方式实现它,但也没有成功。 最佳答案 终于!Robotium5.1自豪地向您展示pressSoftKeyboardSearchButton()。对于旧版本,您可以使用此代码(不够干净,但有效):solo.enterText(0,"

android - Java Robotium Android - 在两个不同的设备上同时运行相同的测试

我想同时在两台设备上运行AndroidRobotium测试。我现在找不到任何解决方案...更准确地说,我有一个包含多个检测类的application-test.apk。我想在两个设备上运行相同的测试apk,但测试类不同。我知道我只能在串行模式下使用adb运行测试。 最佳答案 您可以使用-s标志将adb命令指向特定设备。这意味着您可以只打开两个终端并使用-s标志运行两个不同的命令,它们将并行运行。显然很容易将其更改为脚本,使其成为更具可扩展性的解决方案。示例时间...你有两个设备连接到你的机器上,你想在运行时运行两个不同的测试类(每个