我对Appium很新。我用 .apk 文件尝试了 robotium blackbox方式来填充一个小的Web视图表单,该表单由其他rails服务器自动注入,并且每个东西都能正常工作但是< / p>
当我尝试点击保存&amp;单击下一步按钮,单击上一个条目通过脚本归档的编辑文本框。
我一路使用
solo.waitForText("SaveAndNext");
solo.clickOnWebElement(By.id("SaveAndNext"));
solo.clickOnWebElement(By.name("Save & Next"));
solo.clickOnWebElement(By.textContent("Save & Next"));
但是点击了edittext框。
这是我的代码: -
solo.waitForActivity( “ViewQuestions”);
getInstrumentation().waitForIdleSync();
solo.clickOnText("(?i).*?Yes.*");
solo.enterTextInWebElement(By.className("text_answer"), "2");
solo.hideSoftKeyboard();
solo.waitForText("SaveAndNext");
//solo.clickOnWebElement(By.id("SaveAndNext"));
//solo.clickOnWebElement(By.name("Save & Next"));
//solo.clickOnWebElement(By.textContent("Save & Next"));
for (WebElement webElement : solo.getCurrentWebElements()) {
Log.d("Robotium", "id: " + webElement.getId() + " textContent: "
+ webElement.getTagName());
if (webElement.getId() == "SaveAndNext") {
solo.clickOnWebElement(By.id("SaveAndNext"));
}
}
我检查过 if(webElement.getId()==“SaveAndNext”)是否已通过。 并在logcat
**Robotium id: SaveAndNext textContent: INPUT**
显示。
任何帮助都将受到赞赏。
答案 0 :(得分:0)
删除此for循环并使用:
solo.clickOnWebElement(By.id("SaveAndNext"));
顺便说一句,你无法比较像这样的字符串:
webElement.getId() == "SaveAndNext"
你应该使用equals:
"SaveAndNext".equals(webElement.getId())
答案 1 :(得分:0)
我遇到了类似的问题,因为点击次数不合适。从robotium.org获得此解决方案
为什么文字和按钮点击出错?
如果在其中一个受支持的版本上发生此问题,请尝试将此标记添加到测试项目的AndroidManifest.xml
使用-sdk android:targetSdkVersion =“YOUR_VERSION”
对于Android 2.0,YOUR_VERSION为6,Android 2.1为7,Android 2.2为8。
如果这样无法解决问题,请尝试将此标记添加到要测试的应用程序的AndroidManifest.xml中:
支持屏幕android:anyDensity =“true”