从零开始学习软件测试-第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(变量名,数据)
        • 变量名需要写在元组中
        • 数据使用列表嵌套列表的形式
    • 方法名后面需要写形参进行接收,形参名和变量名一致
相关推荐
阿蒙Amon8 分钟前
JavaScript学习笔记:14.类型数组
javascript·笔记·学习
XFF不秃头17 分钟前
力扣刷题笔记-下一个排列
c++·笔记·算法·leetcode
Lv117700818 分钟前
Visual Studio中Array数组的常用查询方法
笔记·算法·c#·visual studio
长安er29 分钟前
LeetCode 46/51 排列型回溯题笔记-全排列 / N 皇后
笔记·算法·leetcode·回溯·递归·n皇后
代码游侠33 分钟前
学习笔记——写时复制(Copy-on-Write)
linux·网络·笔记·学习·写时复制
阿蒙Amon36 分钟前
JavaScript学习笔记:3.控制流与错误处理
javascript·笔记·学习
HalvmånEver1 小时前
Linux:基础IO(终)
linux·运维·c++·学习·缓冲区·libc
昵称只无法修改1 小时前
计算机底层原理
学习
北岛寒沫1 小时前
北京大学国家发展研究院 经济学辅修 经济学原理课程笔记(第七课 国际贸易)
经验分享·笔记
charlie1145141911 小时前
在上位机上熟悉FreeRTOS API
笔记·学习·嵌入式·c·freertos·工程