我已经使用 Cucumber-JVM for Android 成功集成了 Robotium。
有关cucumber-android
Cucumber-JVM 的现在官方模块和安装的信息,请查看此处。您还可以在此处找到有关 Cucumber-JVM 的 API 文档和示例:http: //cukes.info/platforms.html。
在您的应用程序的测试模块中,只需将Robotium Solo jar 文件添加为依赖项(范围:编译)。
我的一个测试类如下所示:
public class CucumberSteps extends ActivityInstrumentationTestCase2<YourActivity> {
private Solo solo;
public CucumberSteps() {
super(YourActivity.class);
}
@Override
protected void setUp() throws Exception {
super.setUp();
}
@Before
public void before() {
solo = new Solo(getInstrumentation(), getActivity());
}
@After
public void after() throws Throwable {
//clean up
solo.finalize();
}
@Override
protected void tearDown() throws Exception {
solo.finishOpenedActivities();
super.tearDown();
}
@Given("^step_given_description$")
public void step_given_description() throws Throwable {
final View testView = solo.getView(R.id.testView);
solo.waitForView(testView);
solo.clickOnView(testView);
// and so on
}
}
我希望这是足以让任何人开始的信息。当被问到这个问题时,cucumber-android 还不存在。但请记住,GUI 测试通常有些不稳定!我设法在本地获得了一组稳定的测试,但例如在 Jenkins 中,通常一些测试由于未知原因而失败。