兄 dei,咱敢不敢用 markdown 啊,看的很累啊。
首先你的多线程装载有问题:
t1 = threading.Thread(target=get_monkey())
把 get_monkey 后面的括号去掉,应该是 t1 = threading.Thread(target=get_monkey)
线程的参数是函数,而不是函数的返回值,要不当程序执行到你的那句话时,他要把 get_monkey 函数执行结束,得到 None 返回,把 None 作为参数传给 threading.Thread 类。
“但是感觉在这个行业卡住了,公司也没人可以询问的,其它测试的都是手工功能测试的”
看你是个求上进爱钻研的人,我觉得你在你们公司的测试里已经天花板了,如果新公司有个不错的自动化或者测试开发团队,个人建议你跳过去。如果喜欢做开发,有机会可以考虑转开发。
reboot_page 这个变量很危险,在平时编程的时候谨慎这么写,很容易因为没有赋值再引发异常。
没有执行 except 部分说明 try 语句正常执行了或者语句不会引发异常。
从出错看,想让 except 执行 reboot_page = reboot_response.read() 这句得放到 try 里。
随车放置一个 GPS 轨迹记录仪,跑完取出记录仪的数据绘制轨迹,验证和你们后台轨迹是否重合。
停留在这个界面没有报错说明 uiautomator 测试机端的服务已经运行了,保留控制台不要关闭,执行你的测试代码试试。
一开始我也经常遇到 rpc server not start 的错误。
我的解决办法是在测试用例执行前起一个线程,这个线程强制启动 uiautomator 的服务,命令 adb shell am instrument -w com.github.uiautomator.test/android.support.test.runner.AndroidJUnitRunner,你可以在命令行下先试试是否好使。
我这里一切正常,供参考。
可以用 UFT,就是以前的 QTP,惠普家的。
不过根据楼主的情况推荐试试 sikuli,应该可以满足你的需要。
恭喜楼主的帖子被公众号推了。
我也贡献个,以微信为例,其它应用替换包名:
adb shell
monkey -p com.tencent.mm -c android.intent.category.LAUNCHER -v -v 0|grep Using
打印出有 launcher 属性的 activity,对已安装的应用有效。
好想去,可惜杭州太远,不知道有没有人录像分享。
没遇到,无从下手。参考这篇帖子仔细按步骤检查下吧。
https://testerhome.com/topics/5483