Robotium最佳实践。 clickOnView vs clickOnButton

时间:2015-02-23 10:11:12

标签: android testing robotium

我想知道总是使用solo.clickOnView(solo.getView(R.id.example_button));按一个按钮或solo.enterText((EditText) solo.getView(R.id.example_editText), "invalidEmail");输入文字是不是更好。 使用索引solo.clickOnButton(0)按下按钮时,当UI发生变化时,测试将立即失败。

当总是使用View时,这仍然是BlackBox测试吗?

我是Robotium的新手并测试自己,并想知道其他程序员正在使用什么。

1 个答案:

答案 0 :(得分:1)

使用ID将是最佳选择,因为您注意不这样做会使您的测试几乎任何UI更改都非常脆弱。您通常可以使用页面对象等概念(https://code.google.com/p/selenium/wiki/PageObjects关于selenium但粗略概念保持不变)进一步采用这种方法,允许您编写比使用ID搜索对象的每个测试更加可维护的测试(如果是id更改然后你只需要在一个地方改变它等等)

我认为这仍然可以被视为黑盒测试,但根据我的经验,这些术语有点无用,你应该做的最适合你正在使用的系统,在android ids将是你最好的赌注。