菁英科技(卓目鸟学苑)- 专注软件测试菁英教育

标题: 接口测试_20210319_焦新瑞 [打印本页]

作者: 8487    时间: 2021-3-19 17:51
标题: 接口测试_20210319_焦新瑞
1.pytest命名规则
文件test_或_test开头
类Test开头
函数或方法test_开头
eg:def test_register_001():
2.测试前置和后置(模块级和函数级)
环境初始化的动作放到前置中,比如:登录 准备测试数据 打开浏览器
环境清理 的动作放到后置中,比如:退出登录 关闭浏览器
模块级:setup_module、teardown_module
def setup_module():测试前置,整个文件所有用例”前   ”执行一次
def teardown_modeule():测试后置,整个文件所有用例“  后 ” 执行一次
函数级:setup_function、teardown_function
def setup_function():测试前置,每个用例前执行
def teardown_function():测试后置,每个用例后执行
3.测试前置和后置(类级别和方法级)
缺点:明明必须按照规则来写;类里面有3个用例,2个用例执行时需要前置和后置,另1个执行时不需要前置和后置,这个场景无法实现
类级别:setup_class、teardown_class
方法级别:setup_mothod、teardown_mothod
class Test001:类名是用Test开头
def setup_class():测试前置 ,类里所有用例前执行一次
def teardown_class():测试后置,类里所有用例后执行一次

def setup_mothod():测试前置,每个方法前执行
def teardown_class():测试后置。每个方法后执行
4.测试前置和后置(fixture-function和mothod)
任意命名;使用灵活
使用scope=function修饰后,该方法或函数属于测试前置和后置
@pytest.fixture(scope='function')
def login():
   print("登录成功")yield之前是前置
   yield
   print("退出登录")yield之后的是后置

使用scope=module第一次使用这个fixture时,调用前置,所有用例执行完之后,执行后置
5.测试前置和后置(fixture-class)
首次使用是地方执行前置  类里用例执行完 执行后置
6.测试前置和后置(fixture-seesion)
conftest.py
session级别的公共放到这里
使用的时候不用import
pytest根据文件名字自动查找
整个执行过程,首次使用的地方执行前置,全部用例执行完  执行后置
conftest.py有作用域。对所在目录下的文件以及子目录下文件生效
7.fixture可以到参数和返回值
登录的测试数据  用这多组的测试数据  执行同样的用例
数据驱动的测试模型
测试数据
@pytest.fixture(params=[(),(),()])
def login_data(request)固定写法  参数名  request  是pytest中的关键字
  return request.param
测试步骤 测试逻辑  
def test_login(login_data):
  login_data[0],login_data[1]
8.用例有多个参数时,参数之间是全排列的
一个字符串搜索的功能 有3个输入
9.pytest mark标记
跳过用例 (有缺陷的用例跳过不执行)
选择部分用例执行
  工程中用例规模越来越大,包含的复杂
  只想执行一部分
使用自定义标记mark 后面的字符串自己定义
自定义的标记在  pytest.ini 中注册
-m="自定义的名字"
10.
接口测试的环境比较难接口模拟
依赖别人开发的接口,但是 尚未开发完成
mock技术  模拟接口的返回值







欢迎光临 菁英科技(卓目鸟学苑)- 专注软件测试菁英教育 (http://www.zmnxy.com/) Powered by Discuz! X3.4