代码拉取完成,页面将自动刷新
import requests.exceptions
import wda, random
from typing import Literal
from driver.driver import Driver
from time import sleep
from logger.logger import logger
from airtest.report.report import simple_report
from airtest.cli.parser import cli_setup
from airtest.core.api import auto_setup
from config import BASE_PATH
from conn.conn import check_crash
def run(count=100, throttle=0, swipe_rate=3,
click_type: Literal["coordinate", "element"] = "coordinate"):
"""
:param count: 事件数量
:param throttle: 时间间隔
:param swipe_rate: 滑动事件概率,8 => 1/8
:param click_type: 点击事件类型 "coordinate" -> 坐标(推荐使用) | "element" -> 元素(效率低)
:return:
"""
# 清理数据
d = Driver()
logger.info("iosMonkey测试开始执行".center(50, "="))
logger.info(f"执行事件次数:{count}")
logger.info(f"事件间隔时间:{throttle}")
logger.info(f"滑动事件概率:{1 / swipe_rate}")
logger.info(f"点击事件概率:{(swipe_rate - 1) / swipe_rate}")
logger.info(f"点击事件类型:{click_type}")
num = 1
for i in range(count):
event = random.randint(1, swipe_rate)
if event == 1:
d.scroll(num)
num += 1
else:
if click_type == "coordinate":
d.click_by_tap(num)
num += 1
elif click_type == "element":
d.click_by_ele(num)
num += 1
d.click_by_ele(num)
num += 1
d.click_by_ele(num)
num += 1
else:
raise Exception("没有这种点击方式")
sleep(throttle)
logger.info("iosMonkey测试结束执行".center(50, "="))
def generate_report():
logger.info("测试报告生成中, 请稍后···")
simple_report(__file__, logpath=True)
logger.info("测试报告已生成~")
if __name__ == '__main__':
try:
if not cli_setup():
auto_setup(__file__, logdir=True, devices=["IOS:///127.0.0.1:8100", ], project_root=BASE_PATH)
run(5000)
except Exception as err:
check_crash()
generate_report()
raise Exception
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。