#!/usr/local/bin/python3.7
from appium import webdriver
from appium.webdriver.common.touch_action import TouchAction
import time
import random
class SpeedTest:
# 启动app
def __init__(self):
desired_caps = {}
desired_caps['platformName'] = 'iOS' # 设备系统
desired_caps['platformVersion'] = '13.3' # 设备系统版本
desired_caps['deviceName'] = '' # 设备名称
desired_caps['bundleId'] = '' # 测试app包名
desired_caps['udid'] = '' #设备id
desired_caps['automationName'] = 'XCUITest' # 测试框架
desired_caps['noReset']='true' # 保留app的登录状态
desired_caps['xcodeSigningId']='iOS Developer'
# desired_caps['xcodeOrgId']='aaaaa' # 团队id
desired_caps['newCommandTimeout']=3600
self.driver = webdriver.Remote('http://127.0.0.1:4723/wd/hub', desired_caps) # 保持端口号和appium服务端口一致
# 使用隐式等待或者显示等待,尽量减少time.sleep强制等待的使用提高脚本执行速度。
self.driver.implicitly_wait(1)
def cashout(self):
money_list = ['1元','5元','10元','50元']
money = random.choice(money_list)
self.driver.find_element_by_name(money).click()
if '立即提现' in self.driver.page_source:
self.driver.find_element_by_name('立即提现').click()
self.driver.back()
self.driver.back()
else:
self.driver.back()
self.driver.back()
def speedtest(self,module):
# 测速
TouchAction(self.driver).tap(x=206, y=307).perform()
time.sleep(3)
self.driver.find_element_by_name(module).click()
def signin(self):
if '补' in self.driver.page_source:
# 获取'补'的个数
num = self.driver.find_element_by_name('补').size()
for i in range(0,num):
self.driver.find_element_by_name('补').click()
self.driver.find_element_by_name('我要补签,拿回奖励').click()
if '签到领积分' in self.driver.page_source:
self.driver.find_element_by_name('签到领积分').click()
self.driver.back()
elif '签到领积分' in self.driver.page_source:
self.driver.find_element_by_name('签到领积分').click()
self.driver.back()
else:
self.driver.back()
def task(self):
if '去测速' in self.driver.page_source:
self.driver.find_element_by_xpath("//XCUIElementTypeStaticText[@name='去测速']").click()
self.speedtest('我的')
if '去签到' in self.driver.page_source:
self.driver.find_element_by_xpath("//XCUIElementTypeStaticText[@name='去签到']").click()
self.signin()
if '去观看' in self.driver.page_source:
self.driver.find_element_by_xpath("//XCUIElementTypeStaticText[@name='去观看']").click()
time.sleep(30)
# 30s后返回
TouchAction(self.driver).tap(x=383, y=45).perform()
if '去完成' in self.driver.page_source:
self.driver.find_element_by_xpath("//XCUIElementTypeStaticText[@name='去完成']").click()
self.cashout()
if '去关注' in self.driver.page_source:
self.driver.find_element_by_xpath("//XCUIElementTypeStaticText[@name='去关注']").click()
self.driver.back()
else:
pass
def share(self):
share_list = ['QQ空间','QQ','新浪微博','微信','微信朋友圈']
share = random.choice(share_list)
if share =='QQ空间':
TouchAction(self.driver).tap(x=68, y=555).perform()
TouchAction(self.driver).tap(x=49, y=12).perform()
if share =='QQ':
TouchAction(self.driver).tap(x=163, y=552).perform()
TouchAction(self.driver).tap(x=49, y=12).perform()
if share =='新浪微博':
TouchAction(self.driver).tap(x=251, y=552).perform()
TouchAction(self.driver).tap(x=49, y=12).perform()
if share =='微信':
TouchAction(self.driver).tap(x=337, y=545).perform()
TouchAction(self.driver).tap(x=49, y=12).perform()
if share =='微信朋友圈':
TouchAction(self.driver).tap(x=73, y=637).perform()
TouchAction(self.driver).tap(x=49, y=12).perform()
def tools(self):
# 网络工具
self.driver.find_element_by_name('Wi-Fi安全检测').click()
time.sleep(0.5)
self.driver.back()
self.driver.find_element_by_name('网络诊断').click()
time.sleep(0.5)
self.driver.back()
self.driver.find_element_by_name('PING测试').click()
test_list = ['网址','IP']
test = random.choice(test_list)
if test =='网址':
self.driver.find_element_by_xpath("//XCUIElementTypeApplication[@name='网速管家']/XCUIElementTypeWindow[1]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeTextField").send_keys('www.speedtest.cn')
self.driver.find_element_by_name('请输入您想测试的网址').click()
self.driver.find_element_by_xpath("//XCUIElementTypeStaticText[@name='PING']").click()
self.driver.back()
else:
self.driver.find_element_by_name('IP').click()
self.driver.find_element_by_xpath("//XCUIElementTypeApplication[@name='网速管家']/XCUIElementTypeWindow[1]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[3]/XCUIElementTypeTextField[1]").send_keys('32')
self.driver.find_element_by_xpath("//XCUIElementTypeApplication[@name='网速管家']/XCUIElementTypeWindow[1]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[3]/XCUIElementTypeTextField[2]").send_keys('110')
self.driver.find_element_by_xpath("//XCUIElementTypeApplication[@name='网速管家']/XCUIElementTypeWindow[1]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[3]/XCUIElementTypeTextField[3]").send_keys('6')
self.driver.find_element_by_xpath("//XCUIElementTypeApplication[@name='网速管家']/XCUIElementTypeWindow[1]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[3]/XCUIElementTypeTextField[4]").send_keys('119')
self.driver.find_element_by_name('请输入您想测试的IP').click()
self.driver.find_element_by_name('PING').click()
time.sleep(0.5)
self.driver.back()
self.driver.find_element_by_name('5G检测').click()
self.driver.find_element_by_name('宽带提速').click()
time.sleep(0.5)
self.driver.back()
self.driver.find_element_by_name('直播加速').click()
time.sleep(0.5)
self.driver.back()
self.driver.find_element_by_name('蹭网检测').click()
time.sleep(1)
self.driver.back()
# 便民工具
self.driver.find_element_by_name('游戏测速').click()
time.sleep(0.5)
self.driver.back()
self.driver.find_element_by_name('直播测速').click()
time.sleep(0.5)
self.driver.back()
self.driver.find_element_by_name('抢红包测速').click()
time.sleep(0.5)
self.driver.back()
self.driver.find_element_by_name('电商测速').click()
time.sleep(0.5)
self.driver.back()
self.driver.find_element_by_name('购票测速').click()
time.sleep(0.5)
self.driver.back()
self.driver.find_element_by_name('资讯测速').click()
time.sleep(0.5)
self.driver.back()
# 向上滚动手机屏幕
self.driver.execute_script('mobile: scroll', {'direction': 'down'})
self.driver.find_element_by_name('搜索测速').click()
time.sleep(0.5)
self.driver.back()
self.driver.find_element_by_name('电话归属地').click()
time.sleep(1)
self.driver.find_element_by_xpath("//XCUIElementTypeApplication[@name='网速管家']/XCUIElementTypeWindow[1]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeTextField").send_keys('18162327089')
self.driver.find_element_by_name('请输入要查询的手机号').click()
self.driver.find_element_by_name('查询').click()
time.sleep(1)
self.driver.back()
self.driver.find_element_by_name('IP测试').click()
self.driver.find_element_by_xpath("//XCUIElementTypeApplication[@name='网速管家']/XCUIElementTypeWindow[1]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeTextField[1]").send_keys('117')
self.driver.find_element_by_xpath("//XCUIElementTypeApplication[@name='网速管家']/XCUIElementTypeWindow[1]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeTextField[2]").send_keys('157')
self.driver.find_element_by_xpath("//XCUIElementTypeApplication[@name='网速管家']/XCUIElementTypeWindow[1]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeTextField[3]").send_keys('161')
self.driver.find_element_by_xpath("//XCUIElementTypeApplication[@name='网速管家']/XCUIElementTypeWindow[1]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeTextField[4]").send_keys('19')
# 点击空白处出现查询按钮
TouchAction(self.driver).tap(x=209, y=107).perform()
self.driver.find_element_by_name('查询').click()
self.driver.back()
def chart(self):
inter_type = ['4G','宽带','Wi-Fi']
inter = random.choice(inter_type)
if inter == '4G':
if '先去测速' in self.driver.page_source:
self.driver.find_element_by_name('先去测速').click()
self.speedtest('记录')
else:
TouchAction(self.driver).tap(x=298, y=18).perform()
if '先去测速' in self.driver.page_source:
self.driver.find_element_by_name('先去测速').click()
self.speedtest('记录')
else:
TouchAction(self.driver).tap(x=415, y=19).perform()
if '先去测速' in self.driver.page_source:
self.driver.find_element_by_name('先去测速').click()
self.speedtest('记录')
else:
TouchAction(self.driver).tap(x=369, y=61).perform()
TouchAction(self.driver).tap(x=604, y=19).perform()
if inter == '宽带':
TouchAction(self.driver).tap(x=298, y=18).perform()
if '先去测速' in self.driver.page_source:
time.sleep(1)
self.driver.find_element_by_name('先去测速').click()
self.speedtest('记录')
else:
TouchAction(self.driver).tap(x=193, y=19).perform()
if '先去测速' in self.driver.page_source:
time.sleep(1)
self.driver.find_element_by_name('先去测速').click()
self.speedtest('记录')
else:
TouchAction(self.driver).tap(x=415, y=19).perform()
if '先去测速' in self.driver.page_source:
time.sleep(1)
self.driver.find_element_by_name('先去测速').click()
self.speedtest('记录')
else:
TouchAction(self.driver).tap(x=371, y=58).perform()
TouchAction(self.driver).tap(x=604, y=19).perform()
else:
TouchAction(self.driver).tap(x=415, y=19).perform()
if '先去测速' in self.driver.page_source:
time.sleep(1)
self.driver.find_element_by_name('先去测速').click()
self.speedtest('记录')
else:
TouchAction(self.driver).tap(x=301, y=19).perform()
if '先去测速' in self.driver.page_source:
time.sleep(1)
self.driver.find_element_by_name('先去测速').click()
self.speedtest('记录')
else:
TouchAction(self.driver).tap(x=194, y=19).perform()
if '先去测速' in self.driver.page_source:
time.sleep(1)
self.driver.find_element_by_name('先去测速').click()
self.speedtest('记录')
else:
TouchAction(self.driver).tap(x=368, y=61).perform()
TouchAction(self.driver).tap(x=602, y=19).perform()
def setting(self):
self.driver.find_element_by_name('测速').click()
# 设置
TouchAction(self.driver).tap(x=364, y=37).perform()
unit_list = ['Mbps','MB/s','KB/s']
unit = random.choice(unit_list)
# print(unit)
if unit == 'Mbps':
time.sleep(1)
self.driver.find_element_by_name('Mbps').click()
range_list = ['100','300','500','1000']
range = random.choice(range_list)
time.sleep(1)
self.driver.find_element_by_name(range).click()
self.driver.back()
if unit == 'MB/s':
time.sleep(1)
self.driver.find_element_by_name('MB/s').click()
range_list = ['10','30','50','100']
range = random.choice(range_list)
time.sleep(1)
self.driver.find_element_by_name(range).click()
self.driver.back()
else:
time.sleep(1)
self.driver.find_element_by_name('KB/s')
range_list = ['5000','10000','15000','30000']
range = random.choice(range_list)
time.sleep(1)
self.driver.find_element_by_name(range).click()
self.driver.back()
return unit
def records(self):
if '先去测速' in self.driver.page_source:
self.driver.find_element_by_name('先去测速').click()
self.speedtest('记录')
# 进入测速曲线页面
time.sleep(2)
TouchAction(self.driver).tap(x=380, y=43).perform()
self.chart()
else:
time.sleep(3)
TouchAction(self.driver).tap(x=381, y=138).perform()
# 添加备注
time.sleep(1)
TouchAction(self.driver).tap(x=380, y=110).perform()
tips = self.driver.find_element_by_xpath("//XCUIElementTypeApplication[@name='网速管家']/XCUIElementTypeWindow[1]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeTextField")
tips.clear()
tips_list = ['网速管家自动化测试case','网速管家iOS app 测试','qqqqqqqqqqqqqqq','I love you','beautioffff']
tip = random.choice(tips_list)
tips.send_keys(tip)
self.driver.find_element_by_name('确定').click()
time.sleep(0.5)
self.driver.back()
unit = self.setting()
time.sleep(2)
self.driver.find_element_by_name('记录').click()
TouchAction(self.driver).tap(x=381, y=138).perform()
name1 = '下载' + '/' + unit
time.sleep(1)
self.driver.find_element_by_name(name1).click()
self.driver.find_element_by_name('知道啦').click()
time.sleep(0.5)
name2 = '上传' + '/' + unit
self.driver.find_element_by_name(name2).click()
self.driver.find_element_by_name('知道啦').click()
time.sleep(0.5)
self.driver.find_element_by_name('PING/毫秒').click()
self.driver.find_element_by_name('知道啦').click()
time.sleep(0.5)
self.driver.find_element_by_name('抖动/毫秒').click()
self.driver.find_element_by_name('知道啦').click()
time.sleep(0.5)
self.driver.find_element_by_name('丢包/%').click()
self.driver.find_element_by_name('知道啦').click()
time.sleep(0.5)
self.driver.find_element_by_name('大型游戏').click()
time.sleep(0.5)
self.driver.back()
self.driver.find_element_by_name('视频直播').click()
self.driver.back()
self.driver.find_element_by_name('文件传输').click()
time.sleep(0.5)
TouchAction(self.driver).tap(x=208, y=337).perform()
num_list = ['100','1000','10000']
num = random.choice(num_list)
self.driver.find_element_by_xpath("//XCUIElementTypeApplication[@name='网速管家']/XCUIElementTypeWindow[1]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeTextField").send_keys(num)
unit_list = ['KB','MB','GB']
unit = random.choice(unit_list)
# print(unit)
if unit =='KB':
self.driver.find_element_by_name('KB').click()
judje_list = ['取消','开始计算']
judje = random.choice(judje_list)
if judje =='取消':
self.driver.find_element_by_name('取消').click()
self.driver.back()
else:
self.driver.find_element_by_name('开始计算').click()
self.driver.back()
if unit == 'MB':
self.driver.find_element_by_name('MB').click()
judje_list = ['取消','开始计算']
judje = random.choice(judje_list)
if judje =='取消':
self.driver.find_element_by_name('取消').click()
self.driver.back()
else:
self.driver.find_element_by_name('开始计算').click()
self.driver.back()
else:
self.driver.find_element_by_name('GB').click()
judje_list = ['取消','开始计算']
judje = random.choice(judje_list)
if judje =='取消':
self.driver.find_element_by_name('取消').click()
self.driver.back()
else:
self.driver.find_element_by_name('开始计算').click()
self.driver.back()
time.sleep(2)
self.driver.find_element_by_name('抢红包').click()
time.sleep(1)
self.driver.back()
# 分享
time.sleep(1)
TouchAction(self.driver).tap(x=335, y=40).perform()
self.share()
# 删除
time.sleep(1)
TouchAction(self.driver).tap(x=383, y=43).perform()
device_list = ['取消','删除']
device = random.choice(device_list)
if device == '取消':
self.driver.find_element_by_name('取消').click()
else:
self.driver.find_element_by_name('删除').click()
self.driver.back()
time.sleep(1)
if '先去测速' not in self.driver.page_source:
TouchAction(self.driver).tap(x=337, y=42).perform()
choice_list = ['是','否']
choice = random.choice(choice_list)
if choice == '是':
self.driver.find_element_by_name('是').click()
else:
self.driver.find_element_by_name('否').click()
# 进入测速曲线
time.sleep(1)
TouchAction(self.driver).tap(x=380, y=40).perform()
time.sleep(1)
self.chart()
else:
self.driver.find_element_by_name('先去测速').click()
self.speedtest('记录')
# 进入测速曲线页面
TouchAction(self.driver).tap(x=380, y=40).perform()
time.sleep(1)
self.chart()
def perinfo(self):
# 测试个人中心
self.driver.find_element_by_name('个人信息').click()
# 更换头像
self.driver.find_element_by_name('头像').click()
self.driver.find_element_by_xpath("//XCUIElementTypeButton[@name='从相册中选择']").click()
time.sleep(1)
self.driver.find_element_by_name('所有照片').click()
time.sleep(2)
# 使用坐标定位元素,前面一定要加延时(两种方法tap or press)
TouchAction(self.driver).press(x=0, y=466).release().perform()
self.driver.tap([(249,466)],500)
self.driver.find_element_by_name('选取').click()
time.sleep(1)
# 填写昵称
self.driver.find_element_by_name('昵称').click()
# 定义一个昵称列表
nick_name = ['墨殇浅辰','尘埃未定','只言片语','蔷薇·花开','夜思晨','酒不醉人人自醉','初恋栀子花']
nickName = self.driver.find_element_by_xpath("//XCUIElementTypeApplication[@name='网速管家']/XCUIElementTypeWindow[1]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeTextField")
# 清空之前的昵称
nickName.clear()
nickName.send_keys(random.choice(nick_name))
self.driver.find_element_by_name('完成').click()
# 选择性别
self.driver.find_element_by_name('性别').click()
sex_list = ['男','女']
sex = random.choice(sex_list)
if sex == '男':
TouchAction(self.driver).tap(x=136, y=356).perform()
# 通过坐标点击确定
TouchAction(self.driver).tap(x=282, y=457).perform()
else:
# 取消
TouchAction(self.driver).tap(x=129, y=457).perform()
# 重置密码
time.sleep(0.5)
self.driver.find_element_by_name('密码').click()
self.driver.find_element_by_xpath("//XCUIElementTypeApplication[@name='网速管家']/XCUIElementTypeWindow[1]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeTextField[1]").send_keys("18827441913")
self.driver.find_element_by_name('获取验证码').click()
# 取消验证码弹框
TouchAction(self.driver).tap(x=362, y=518).perform()
self.driver.find_element_by_xpath("//XCUIElementTypeApplication[@name='网速管家']/XCUIElementTypeWindow[1]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeTextField[2]").send_keys('111111')
self.driver.find_element_by_name('下一步').click()
time.sleep(0.5)
# 返回
self.driver.back()
# 返回我的页面
self.driver.back()
# 积分
self.driver.find_element_by_name('积分').click()
self.driver.find_element_by_name('积分介绍').click()
self.driver.back()
self.driver.find_element_by_name('可用积分').click()
self.driver.find_element_by_name('可用积分明细').click()
# 冻结积分明细
TouchAction(self.driver).tap(x=119, y=697).perform()
self.driver.find_element_by_name('去提现').click()
self.cashout()
self.driver.find_element_by_name('冻结积分').click()
self.driver.find_element_by_name('冻结积分明细').click()
# 可用积分明细
TouchAction(self.driver).tap(x=122, y=641).perform()
self.driver.find_element_by_name('去提现').click()
self.cashout()
self.driver.find_element_by_name('提现兑换').click()
self.cashout()
self.driver.find_element_by_name('积分').click()
self.driver.find_element_by_name('提现记录').click()
self.driver.back()
self.driver.find_element_by_name('积分明细').click()
self.driver.find_element_by_name('可用积分明细').click()
# 冻结积分明细
TouchAction(self.driver).tap(x=144, y=696).perform()
self.driver.find_element_by_name('去提现').click()
self.cashout()
self.task()
self.driver.back()
# 赚钱
self.driver.find_element_by_name('赚钱').click()
# 广告
TouchAction(self.driver).tap(x=214, y=129).perform()
self.driver.back()
self.task()
self.driver.back()
# 设置
self.driver.find_element_by_name('设置').click()
self.driver.find_element_by_name('关于我们').click()
self.driver.find_element_by_name('评价我们').click()
TouchAction(self.driver).tap(x=49, y=12).perform()
self.driver.find_element_by_name('用户协议').click()
self.driver.back()
self.driver.find_element_by_name('隐私条款').click()
self.driver.back()
self.driver.find_element_by_name('联系方式').click()
self.driver.back()
self.driver.back()
self.driver.find_element_by_name('帮助与反馈').click()
self.driver.back()
self.driver.find_element_by_name('清除缓存').click()
option_list = ['是','否']
option = random.choice(option_list)
if option =='是':
self.driver.find_element_by_name('清除').click()
else:
self.driver.find_element_by_name('取消').click()
self.driver.find_element_by_name('版本更新').click()
TouchAction(self.driver).tap(x=49, y=12).perform()
# 移动网络提醒
TouchAction(self.driver).tap(x=350, y=318).perform()
self.driver.back()
# self.driver.find_element_by_name('分享').click()
# time.sleep(1)
# self.share()
time.sleep(1)
# 工具箱
self.driver.find_element_by_name('工具箱').click()
self.tools()
# 记录
self.driver.find_element_by_name('记录').click()
self.records()
# 测速
self.driver.find_element_by_name('测速').click()
time.sleep(1)
self.setting()
time.sleep(1)
self.speedtest('测速')
# 点击一个id定位的元素
# self.driver.find_element_by_accessibility_id("").click()
# 给输入id定位的输入框传值
# self.driver.find_element_by_accessibility_id("").set_value("iostest")
# 截图保存到当前文件
# self.driver.save_screenshot('IosAutoTest/records.png')
# 关闭app
self.driver.close_app()
def test(self):
# 首先判断是否登录
time.sleep(2)
self.driver.find_element_by_name('我的').click()
if '未登录' in self.driver.page_source:
self.driver.find_element_by_name('未登录').click()
self.driver.find_element_by_name('账号密码登录').click()
self.driver.find_element_by_xpath("//XCUIElementTypeApplication[@name='网速管家']/XCUIElementTypeWindow[1]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeTextField").send_keys("18827441913")
self.driver.find_element_by_xpath("//XCUIElementTypeApplication[@name='网速管家']/XCUIElementTypeWindow[1]/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther/XCUIElementTypeOther[2]/XCUIElementTypeSecureTextField").send_keys("123456")
self.driver.find_element_by_name('登录').click()
self.perinfo()
else:
self.perinfo()
if __name__ == '__main__':
speedtest =SpeedTest()
speedtest.test()