机器人最佳实践。 clickOnView 与 clickOnButton
Robotium best practice. clickOnView vs clickOnButton
我想知道总是使用 solo.clickOnView(solo.getView(R.id.example_button));
按下按钮或 solo.enterText((EditText) solo.getView(R.id.example_editText), "invalidEmail");
输入 en 文本不是更好。
当使用索引 solo.clickOnButton(0)
按下按钮时,当 UI 发生变化时,测试将立即失败。
如果一直使用视图,这仍然是黑盒测试吗?
我是 Robotium 的新手,正在测试自己,想知道其他程序员正在使用什么。
使用 ID 将是最佳选择,因为您注意到不这样做会使您的测试对几乎任何 UI 更改都非常脆弱。您通常可以使用诸如页面对象之类的概念(https://code.google.com/p/selenium/wiki/PageObjects 是关于 selenium,但粗略的概念是成立的)让您编写的测试比在每次使用 id 搜索对象的测试中更易于维护(如果一个id 更改,那么您只需在一个地方更改它等)
我认为这仍然可以被视为黑盒测试,但根据我的经验,这些术语有点无用,您应该在 android ids 将是你最好的选择。
我想知道总是使用 solo.clickOnView(solo.getView(R.id.example_button));
按下按钮或 solo.enterText((EditText) solo.getView(R.id.example_editText), "invalidEmail");
输入 en 文本不是更好。
当使用索引 solo.clickOnButton(0)
按下按钮时,当 UI 发生变化时,测试将立即失败。
如果一直使用视图,这仍然是黑盒测试吗?
我是 Robotium 的新手,正在测试自己,想知道其他程序员正在使用什么。
使用 ID 将是最佳选择,因为您注意到不这样做会使您的测试对几乎任何 UI 更改都非常脆弱。您通常可以使用诸如页面对象之类的概念(https://code.google.com/p/selenium/wiki/PageObjects 是关于 selenium,但粗略的概念是成立的)让您编写的测试比在每次使用 id 搜索对象的测试中更易于维护(如果一个id 更改,那么您只需在一个地方更改它等)
我认为这仍然可以被视为黑盒测试,但根据我的经验,这些术语有点无用,您应该在 android ids 将是你最好的选择。