Bob's Blog

Web开发、测试框架、自动化平台、APP开发、机器学习等

返回上页首页

android自动化测试中不能触发search的解决方法



最近写android自动化脚本时遇到一个小问题:在界面上输入搜索的关键词,但在旁边并没有一个搜索按钮。手动操作时只能点击键盘上的一个搜索小按钮(由点击输入框时弹出的键盘)。

在做自动化时,发现即使定位到该键盘上的搜索,点击并不生效;换做发送keycode也不行,比如driver.press_keycode(84),keycode编码来源于:https://developer.android.com/reference/android/view/KeyEvent.html#KEYCODE_SEARCH。

另外要做的话还可以尝试通过坐标来执行tap操作,不过这样并不好,因为不稳定,当换了设备后分辨率有变化,那么坐标也会有变化。

最后通过execute_script执行mobile_command来解决了该问题,触发了搜索行为:

driver.execute_script("mobile: performEditorAction", { "action" => "search"})

 

参考文章:

http://appium.io/docs/en/commands/mobile-command/

https://discuss.appium.io/t/unable-to-tap-search-button-on-android-softkeyboard/1598/25

下一篇:  Django restframework加Vue打造前后端分离的网站(十二)vue生命周期的事件
上一篇:  Django restframework加Vue打造前后端分离的网站(十一)自定义图表

共有0条评论

添加评论

暂无评论