- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我有一个针对此问题的简单测试项目,但我不明白它会如何失败。
被测项目仅在布局中添加一个按钮,用于测试目的。
<Button
android:id="@+id/test_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Click" />
这是测试类:
public class TestMainActivity extends ActivityInstrumentationTestCase2<MainActivity> {
private Solo solo;
public TestMainActivity() {
super(MainActivity.class);
}
public void setUp() throws Exception {
solo = new Solo(getInstrumentation(), getActivity());
}
public void test1() {
solo.clickOnButton(com.example.testrobotium.R.id.test_button);
}
public void test2() {
}
@Override
public void tearDown() throws Exception {
solo.finishOpenedActivities();
}
}
执行该测试类时,返回的错误轨迹如下,指向clickOnButton的调用:
junit.framework.AssertionFailedError: 2131165185 找不到按钮!在 com.jayway.android.robotium.solo.Waiter.waitForAndGetView(Waiter.java:417)在 com.jayway.android.robotium.solo.Clicker.clickOn(Clicker.java:374)在 com.jayway.android.robotium.solo.Solo.clickOnButton(Solo.java:1052)在 com.example.testrobotium.test.TestMainActivity.test1(TestMainActivity.java:22)在 java.lang.reflect.Method.invokeNative( native 方法)在 android.test.InstrumentationTestCase.runMethod(InstrumentationTestCase.java:204)在 android.test.InstrumentationTestCase.runTest(InstrumentationTestCase.java:194)在 android.test.ActivityInstrumentationTestCase2.runTest(ActivityInstrumentationTestCase2.java:186)在 android.test.AndroidTestRunner.runTest(AndroidTestRunner.java:169)在 android.test.AndroidTestRunner.runTest(AndroidTestRunner.java:154)在 android.test.InstrumentationTestRunner.onStart(InstrumentationTestRunner.java:529)在 android.app.Instrumentation$InstrumentationThread.run(Instrumentation.java:1448)
我的测试类中是否遗漏了导致此问题的某些内容?
最佳答案
问题是 robotium 无法按照您的使用方式工作!
solo.clickOnButton() 有两种实现,一种将按钮中的文本作为参数,另一种采用索引。您传递的按钮 ID 恰好是一个 int 值,但 int 值不是索引。
您希望您的代码如下所示:
solo.clickOnView(solo.getView(com.example.testrobotium.R.id.test_button));
如果您需要更多解释,我很乐意提供帮助。
关于android - Robotium clickOnButton 类中的 2 个测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15274050/
我想知道是否可以运行我用 Robotium 编写的脚本,以便在任何地方的设备云(如 Perfectomobile 或 Device)中工作。 提前致谢。 最佳答案 testdoid允许您在云中运行ro
我正在尝试使用 Robotium 验证 View 中的一些数据。 我为此编写了以下代码: NegativeExpected=false; solo.clickOnButton(0);
我正在尝试使用 Robotium 验证 View 中的一些数据。 我写了下面的代码: NegativeExpected=false; solo.clickOnButton(0);
我有一个日期选择器字段,我想在其中设置日期(月、日和年的选择器每个字段都带有 + 和 -),但不知道如何在 Robotium 中执行此操作。我尝试使用 solo.setDatePicker(int,
我正在尝试在 Android 上测试日期选择器场景。我有一个日期选择器,当我单击一个 TextView (id 为 v)时,它会出现,上面有一个标签以及提示“输入日期”。 问题是我试图模拟点击 Tex
我只是想用 Robotium 测试一个安卓应用程序。我遇到的问题是我无法重新签署应用程序以在 Eclipse 中启动测试项目。我已按照 http://code.google.com/p/robotiu
如何使Robotium单击页面中的特定链接? 最佳答案 您应该尝试单击链接中的 anchor 文本。 例如,如果链接显示www.google.com,则可以执行以下操作: this.solo.clic
我在 Robotium 中编写了一个脚本,它工作得很好,但是我们的应用程序的设计方式是它必须与无法辞职的 native android 应用程序进行交互。我必须单击 native 应用程序上的一个按钮
每次使用 Robotium 测试应用程序时,我都需要导航到测试项目属性并将其添加到项目中,每当我配置新的测试项目时,我每次都需要添加它 还有其他方法可以安装 Robotium 并在我的测试项目中使用默
我需要有关 Robotium 脚本的帮助。我的情况类似于“在我的 AUT 中,当前日期可用“2014 年 1 月 30 日”。因此我需要验证其是否为当前日期。 最佳答案 您可以将该字符串解析为日期并将
我使用 robotium 3.5.1 在我的 android 程序中创建了简单测试,代码如下: protected void setUp() throws Exception { solo =
我正在尝试在演示应用程序上运行 Robotium 测试套件,但在将测试应用程序推送到设备后,android maven 插件在 mvn install 失败,因为它找不到目标应用程序。 错误是 Tes
我正在尝试使用 Robotium 在 Linux 服务器上测试我的 Android 应用。 lt.socialheat.android.tests.SocialHeatTest: Failure in
作为一名对 java 没有任何深入了解的技术测试人员,我有一个关于 robotium 和 ActivityInstrumentationTestCase2 的问题。我已经使用 eclipse 和 ro
我正在使用适用于 Android 的 Robotuim。有谁知道如何设置具体测试用例的运行次数? 最佳答案 只需在测试用例定义上方添加以下行: @FlakyTest(tolerance=3) 你的测试
所以我上周对我的 Android 应用程序进行了更改,无意中将一些按钮绘制到了屏幕之外。 我可以在 Eclipse 中看到屏幕外的对象,并且没有抛出任何错误,但是当应用程序运行时,按钮不可见(屏幕外)
我是 Robotium 测试的新手,我想测试以下场景: 1.) 启动应用程序做一些事情。2.) 按主页按钮。(关闭应用程序)3.) 恢复应用程序并测试是否一切正常。 我的问题是如何实现第 2 步和第
我是 robotium 的新手,我正在尝试编写一个快速但粗略的脚本来运行应用程序中的所有屏幕。 我的问题主要与应用程序中的“主页按钮”有关。我已经尝试了很多选项,但我似乎无法让它点击那里,除了索引,这
我的应用程序测试类很少。如果它持续超过 4 秒,我想测试失败。我的代码破坏了测试,但在某些情况下它不执行下一个测试类。 我写的时候(跟timeout无关,只是fail()的一个例子): public
当我尝试与蓝牙设备配对时,出现带有 PIN 的系统确认对话框。有按钮“取消”和“确定”。但是我不能用 Robotium 点击它们。如何在 Robotium 中使用 Android 操作系统对话框?谢谢
我是一名优秀的程序员,十分优秀!