从零开始学习软件测试-第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(变量名,数据)
        • 变量名需要写在元组中
        • 数据使用列表嵌套列表的形式
    • 方法名后面需要写形参进行接收,形参名和变量名一致
相关推荐
p666666666811 分钟前
【☀Linux驱动开发笔记☀】新字符设备驱动开发_02
linux·嵌入式硬件·学习
笨鸟笃行26 分钟前
百日挑战——单词篇(第二十四天)
学习
惜.己40 分钟前
html笔记(一)
前端·笔记·html
烤麻辣烫1 小时前
23种设计模式(新手)-7迪米特原则 合成复用原则
java·开发语言·学习·设计模式·intellij-idea
开开心心_Every2 小时前
Excel图片提取工具,批量导出无限制
学习·pdf·华为云·.net·excel·harmonyos·1024程序员节
952363 小时前
数据结构-二叉树
java·数据结构·学习
无妄无望3 小时前
ragflow代码学习切片方式(1)docling_parser.py
人工智能·python·学习
大筒木老辈子3 小时前
Git笔记---远程仓库的创建与基本操作
笔记·git
风123456789~3 小时前
【健康管理】健康管理师-考试范围
笔记·健康管理
Elias不吃糖3 小时前
整合了c++里面常用的STL及其常用API
开发语言·c++·学习·stl