以前我们做appium自动化测试的时候,获取devicesName的方法就是通过命令:adb devices 就可以获取到了。
现在我们做appium多线程自动化测试,同时出现多个devices Name,怎么知道分配到对应的手机或客户端呢?
思路:
1,我们做appium自动化的时候,首先要配置环境:
如上图所示:我们通过deviceName和port来指定对应的手机或客户端。
因为我们通过服务端启动appium的时候,命令:appium -p port1 -bp port2 -U deviceName的值。
我们只要获取到了所有deviceName的值和port的值,这样我们就可以通过分配deviceName和port来指定不同的手机或客户端运行脚本了。
因为我们时结合PO模式与unittest框架的。不可能手动获取这些值的,必须通过脚本来获取这些值。
今天我们就先讲讲如何通过脚本获取到所有连接设备的deviceName的值。
具体见如下代
通过新建一个类,DOS_cmd,,通过引入os,os.popen('adb devices').readlines() 打印出连接所有设备的值,但是这些值中有很多内容是不需要的,
我们只需要:0123456789ABCDEF 和MKB4C20619029439 那么,我们就要去掉多余的部分,通过上面的截图,我们去掉了:‘\n',
但是,还有'List of devices attached',,\tdevice'我们没有去掉,那么,我们下面再建一个类,去掉剩下的多余的部分。
今天通过新建两个类,成功的获取到了,我们连接成功的设备的deviceName的值。
下篇文章我再记录如何成功获取连接成功的设备的port端口。
最后再讲如何如何与PO模式,unittest框架结合,实现多线程appium的自动化。多部手机设备同时跑自动化用例。