从零开始学习软件测试-第46天笔记

appium中的操作方法

滑动操作

  • swipe(start_x,start_y,end_x,end_y,duration=持续时间)
    • 持续时间越大,没有惯性
    • 持续时间越小,惯性越大
    • 持续时间太小的话,会变成点击
  • scroll(起始的元素,结束的元素,持续时间)
    • 持续时间越大,没有惯性
    • 持续时间越小,惯性越大
  • drag_and_drop(起始的元素,结束的元素)
    • 没有惯性,精准的滑动

高级手势

  • 被封装在appium里的TouchAction类中
  • tap()
    • 轻敲屏幕
  • perform()
    • 执行
  • press()
    • 按下
  • release()
    • 抬起
  • wait()
    • 等待
  • long_press()
    • 长按
  • move_to()
    • 移动

pytest框架

下载pytest

  • pip install pytest==5.4.3

pytest基本使用

  • 创建一个以test_开头的文件
  • 创建一个以Test开头的类
  • 创建一个以test_开头的方法
  • 在终端中使用pytest去运行

pytest的配置文件

  • 在根目录下创建一个pytest.ini的文件
python 复制代码
[pytest]
# 添加运行时候的参数
addopts = -s

# 指定运行的路径
testpaths = ./scripts

# 指定运行的文件
python_files = test*.py

# 指定运行的类
python_classes = Test*

# 指定运行的方法
python_functions = test*

生成HTML测试报告

  • pip install pytest-html
  • 在运行参数行后面添加 --html=报告的路径以及文件名称
    • eg:--html=./report/report.html

失败重跑

  • pip install pytest-rerunfailures
  • 在运行参数行后面添加 --reruns 次数

跳过测试函数

  • 导入pytest
  • 在测试方法上面使用装饰器
    • @pytest.mark.skipif(condition=条件,reason='注释')

预期失败

  • 在测试方法上面使用装饰器
    • @pytest.mark.xfail(condition=条件,reason='注释')

控制函数执行顺序

  • pip install pytest-ordering
  • 在测试方法上面使用装饰器
    • @pytest.mark.run(order=数字)
    • 排序顺序:0>正数(从小到大)>不加装饰器>负数(从小到大)

参数化

  • 单个参数的参数化
    • 在测试方法上面使用装饰器
      • @pytest.mark.paramtrize(变量名,数据)
    • 方法名后面需要写形参进行接收,形参名和变量名一致
  • 多个参数的参数化
    • 在测试方法上面使用装饰器
      • @pytest.mark.paramtrize(变量名,数据)
        • 变量名需要写在元组中
        • 数据使用列表嵌套列表的形式
    • 方法名后面需要写形参进行接收,形参名和变量名一致
相关推荐
斯维赤1 小时前
AI Agent学习之路 | Prompt Engineering(提示词工程)的三板斧核心技巧
人工智能·学习·prompt
从零开始的嵌入式之旅1 小时前
day44
arm开发·经验分享·笔记·嵌入式硬件
2301_802651083 小时前
imx6ull裸机开发:UART
学习
辣知4 小时前
辣知·化智56 良渚神权与夏朝颠覆
学习
商业白皮书4 小时前
杭州企业做 GEO 怎么选服务商?B2B 制造、外贸出海与品牌连锁选型指南
笔记
dadaobusi4 小时前
学习:三层交换机
学习
商业白皮书5 小时前
密不透风的瑕疵防线:东集SEV400视觉传感器,定义“轻量化”精准检测
笔记
笨鸟先飞的橘猫5 小时前
树结构在游戏行业中的应用
学习·游戏
yangmu32035 小时前
从显像管到Micro-LED:屏幕的光之进化
学习·显示器
半生过往6 小时前
前端工程师学习智能体开发(一)
前端·学习·状态模式