在做 android 前端性能自动化测试时,你是否经历过这样的场景:依次启动 A、B、C 三个 app,其中 C 是被测 app, 当当前屏幕切换到 B 进行相关操作后,如何通过封装方法实现自动切换会已经处于后台进程模式的被测 app 进程 C 呢? 我的实现思路大体是这样的。 1 首先封装点击键盘 menu 键操作,代码如下所示: public static void tapDeviceMenu(String udid){String cmdMenu = "adb -s "+udid+" shell input keyevent KEYCODE_MENU";CmdUtils.executeCmd(cmdMenu);} 2 当前界面处于进程切换情况下,可以通过点当前屏幕的中点实现切换到进程 C 的预期效果,封装点击当前屏幕中点方法,代码如下所示: public static void screenTapCenter(String udid){List 3 不同的手机设备屏幕分辨率是不同的,如何兼容不同手机获取中点坐标呢?封装方法如下: public static List 4 对应的 adb 命令有哪些呢? >adb shell input keyevent KEYCODE_MENU>adb shell input tap 中点横坐标中点纵坐标Ⅴ注意,该方法仅适用于安卓设备启动 3 个应用,并且启动顺序是 A、B、C,并且 B 这个 App处于当前界面情况下如何切换到 C 情况下。这里还涉及到获取 dos 命令返回结果以及正则匹配指定字符串,这两个方法封装较常见,在这里就不再赘述了。 作 者:Testfan 恨水 出 处:微信公众号:自动化软件测试平台 版权说明:欢迎转载,但必须注明出处,并在文章页面明显位置给出文章链接 推荐阅读:怀化热线 (正文已结束) (编辑:喜羊羊) 免责声明及提醒:此文内容为本网所转载企业宣传资讯,该相关信息仅为宣传及传递更多信息之目的,不代表本网站观点,文章真实性请浏览者慎重核实!任何投资加盟均有风险,提醒广大民众投资需谨慎! |