TA的每日心情 | 奋斗 2018-3-8 09:22 |
---|
签到天数: 2 天 连续签到: 1 天 [LV.1]测试小兵
|
python+uiautomator2
需求是这么定义的:有5个SOS号码,可以填5个也可以不填。
测试用例描述:先判断有没有旧的SOS号码,如果有全部删除后,再去添加5个;如果没有直接添加。
问题:我如何去判定原来的SOS号码有几个,然后做到一一删除。
- # 针对于上一个脚本AddSOSAndScreen.py,有这么两处不足
- # 1、如果我存在的旧的SOS号码没有5个,即存在1个--4个,执行就会报错
- # 2、每次录入新的SOS号码,因为是随机,但是有可能随机匹配相同的号码,如何随机录入不同的SOS号码............解决方式:将list_tel定义为全局变量
- import uiautomator2 as u2
- from time import sleep
- import random
- import time
- ip = '192.168.1.104'
- package = 'com.njzx.shbsetting'
- device = u2.connect(ip)
- path = "E:\\pycharm\\run\\UiAutomator2\\F5\\screenpicture\\"
- now_time = time.strftime("%Y-%m-%d-%H-%M-%S")
- def start_app(): # 启动应用
- device.app_start(package)
- sleep(2)
- def addTel_submit():
- device(resourceId="com.njzx.shbsetting:id/layout_sos").click()
- sleep(1)
- # 判断是否存在旧的SOS号码,若存在先删除再添加
- sos_old_tel1 = device(text = "SOS1")
- sos_old_tel2 = device(text="SOS2")
- sos_old_tel3 = device(text="SOS3")
- sos_old_tel4 = device(text="SOS4")
- sos_old_tel5 = device(text="SOS5")
- list_old_tel = [sos_old_tel1,sos_old_tel2,sos_old_tel3,sos_old_tel4,sos_old_tel5]
- if list_old_tel[0].exists:
- for x in range(len(list_old_tel)):
- device(resourceId="zte.shb.sossetting:id/delete").click()
- device(resourceId="zte.shb.sossetting:id/btn_set").click()
- addTel()
- device.press("home")
- else:
- addTel()
- device.press("home")
- list_tel = [1774959158, 15152660926, 13222797082, 15365023694, 15951820949, 18551695620,1414141352545, 1344123313231, 124345545566]
- def addTel(): # 添加SOS号码
- for i in range(0, 5):
- device(text="输入号码添加").click()
- sleep(1)
- device(resourceId="zte.shb.sossetting:id/et_num").click()
- sos_tel = random.choice(list_tel)
- list_tel.remove(sos_tel)
- print(list_tel)
- device(resourceId="zte.shb.sossetting:id/et_num").send_keys(sos_tel)
- device(resourceId="zte.shb.sossetting:id/btn_add").click()
- sleep(2)
- image = device.screenshot()
- image.save(path + now_time + '.jpg')
- sleep(1)
- if __name__ == '__main__':
- start_app()
- addTel_submit()
复制代码
|
|