霍格沃兹测试学社

ceshiren.com

直播 20:00 开始

Pytest + Allure 测试框架与接口自动化训练营

Pytest + Allure 测试框架与接口自动化训练营

About me

  • 某知名互联网公司资深测试开发工程师
  • 霍格沃兹测试学院讲师
  • 致力于通过技术手段提高测试团队工作效率并改善产品交付可靠性。

目录

  • pytest 安装与基本用法
  • allure 安装与基本用法
  • requests 安装与基本用法
  • 企业微信接口实战

pytest 安装与基本用法

pytest 介绍

  • 单测框架,比 unittest 测试框架更灵活
  • 入门难度低
  • 第三方库丰富性
  • 通用性
  • 与 allure 生成的报告非常的美观
  • 定制性强

pytest 安装

pytest 命名规则

  • 测试文件
    • test_*.py
    • *_test.py
  • 用例识别
    • Test*类包含的所有test_*的方法(测试类不能带有__init__方法)
    • 不在class中的所有的test_*方法

Allure 生成测试报告

Allure 生成测试报告 - 添加分类

  • 注解 @allure.feature 与 @allure.story 的关系
    • feature 相当于一个功能,一个大的模块,将 case 分类到某个 feature中,报告中 behaviore 中显示,相当于testsuite
    • story 相当于对应这个功能或者模块下的不同场景,分支功能,属于 feature 之下的结构
    • feature 与 story 类似于父子关系

Allure 生成测试报告 - 添加测试步骤

  • 场景:
    • 测试过程中每个步骤,一般放在具体逻辑方法中,可以放在关键步骤中,在报告中显示
    • 在app, web⾃动测试当中,建议每切换到⼀个新的页⾯当做一个step
  • 用法:
    • with allure.step():  可以放在测试用例方法里面,但测试步骤的代码需要被该语句包含

Allure 生成测试报告 - 添加日志

  • 使用python logging 模块收集日志

Allure 生成测试报告 - 添加图片

allure.attach.file("/path/to/tmp.png",name="截图",
attachment_type=allure.attachment_type.PNG)

Allure 运行

  • 第一步:生成中间结果(text,json)
    • pytest test_ceshiren.py  --alluredir=./result
  • 第二步:生成最终html 报告
    • allure serve ./result
  • 另外:也可以直接生成html结果,在线访问
    • allure generate ./result -o ./report --clean  (注意:覆盖路径加–clean )

requests 安装与用法

requests 安装

pip install requests

requests 四个常用动作

  • get
  • post
  • put
  • delete

实战

了解企业微信

  • 企业微信 有 web 和app版本
  • 主要是对企业人员的管理 ,办公一体化

梳理用例设计思路

企业微信

四个月实训的测试开发大课

企业微信实战 - 环境准备

企业微信实战1 - 获取企业微信token

企业微信实战2 - 添加部门接口