gpt4 book ai didi

android - Robotium for Android - solo.searchText () 不工作

转载 作者:太空狗 更新时间:2023-10-29 13:29:16 25 4
gpt4 key购买 nike

我在使用 Robotium 的 searchText() 函数时遇到问题。

我正在搜索这个字符串:

<string name="provisioning_wizard_title_2">Service Activation Wizard (Step 2)</string>

我在字符串 xml 中定义了它,我正在这样搜索它:

Activity act=solo.getCurrentActivity(); 
String string = solo.getString(act.getResources().getIdentifier("provisioning_wizard_title_2", "string", act.getPackageName()));

调用失败

assertTrue(solo.searchText(string));

如果我调用它也会失败:

assertTrue(solo.searchText("Service Activation Wizard (Step 2)"));

即使那是我在聚焦屏幕 Activity 中看到的字符串。

奇怪的是,如果我使用没有最后一个字符的相同字符串,它会起作用:

assertTrue(solo.searchText("Service Activation Wizard (Step 2"));

如果我使用它就可以工作

assertTrue(solo.searchText(string.substring(0, string.length()-1)));

我希望有人能帮助我。

对不起我的英语!

谢谢。

问题已解决感谢 Renas Reda(Robotium 的创始人和维护者),我解决了问题。问题是由于 searchText() 中的正则表达式支持;一些角色会触发它。使用 Pattern.quote(string)示例:Pattern.qoute("provisioning_wizard_title_2") 一切都很好!

最佳答案

我通常使用 Solo#waitForText(...) 以确保我不会失去一些竞争条件。

试试这个:

assertTrue(solo.waitForText( solo.getString(R.string.provisioning_wizard_title_2) );

确保您从生产项目(而非测试项目)导入正确的 R.java 文件。

关于android - Robotium for Android - solo.searchText () 不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17741680/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com