#29 楼 @cloudwind 可以启动多个,但是没有执行用例,就是多线程不会写。你们是怎么写的线程呢。
斗鱼妹子多么?
有什么条件,可以做讲师也要说一下吧。
只能默默仰望你们。
#19 楼 @1045235634 只实现了多设备启动应用但是没有运行测试用例。
后面我没替换,保留 devicename 然后增加了 udid 字段就可以 2 个手机可以分别跑了,但不是同步跑的,用例也没执行,只是 2 个手机都启动了被测应用。谢谢#16 楼 @chenhengjie123 给的启发。
#16 楼 @chenhengjie123
{"udid":"69T7N15C22001823","appActivity":".MainActivity","appPackage":"net.xxx.xxxx","platformVersion":"6.0","platformName":"Android"}}
info: Client User-Agent string: Python-urllib/3.5
info: [debug] Got configuration error, not starting session
info: [debug] Cleaning up appium session
info: [debug] Error: The following desired capabilities are required, but were not provided: deviceName
使用 udid 代替 devicename 直接报错了。
刚才查看了一下 adb forward 上面的结果可能与这个有关系,
只有一个设备的。且使用了 3 个不同的端口
#9 楼 @terry_tan 你使用 usb 连接多个设备时候可以同时跑么?
之前有看到 appium 服务器形式解决,我也不知道是怎么实现,我现在是电脑上装一个 appium,多个手机是就多起几次 appium 修改端口这样。目前我上面写的缺点就是 usb 只支持一个 adb 连接。怎么改成无线连接。支持多个 adb。
#5 @terry_tan谢谢回复。
appium 那边我现在是手动起多个服务,端口号我都改的和程序一样,2 个设备我就起 2 个端口号 +1。例如一个服务是--port 4723 ;一个是--port 4724 这样。
另:--bootstrap-port 4824 这个必须要写么?我写和不写运行起来没差别。
2、platformVersion 这个我到没特别注意,一个的时候不是 6.0 的这样写没什么问题。
threads=[]
def getConnDevice():
devicesname=getDevices()
desired_caps = {'platformName': 'Android', 'platformVersion': '6.0', 'appPackage': 'net.xxx.xxx', 'appActivity': '.MainActivity'}
host=4719
if len(devicesname)>1:
devicesid=devicesname[0:]
for i in devicesid:
desired_caps['deviceName']=i
host=host+1
driver = webdriver.Remote('http://localhost:%d/wd/hub' %host, desired_caps)
t=threading.Thread(args=driver)
threads.append(t.start())
continue
threads.append(t.join())
之前的思路大概就是这样。getdevices()获取所有 devices。写的比较糟。求一个清晰点的代码
我这样做了,我做的循环获取 devices 和端口号自动增加。但是还是会第二个踢掉第一个。懂具体实现的说一下细节好么
excel 转 testlink。
几点我觉得挺在理,而且是实际出发,平时都能遇到的。
学习版规
是通过 ui 来测试功能,还是来测试 ui 呢,看的不是很明白。