Python的Pytest测试框架(1)

1、Pytest测试框架
手工执行测试:熟悉业务­­ 写用例(分模块)­­ 执行用例并记录 ­生成本轮的测试报告
自动化测试:熟悉业务 ­­ 写用例(手工用例转化为自动化测试用例)­­ 用代码表达用例 (代码写出用例) ­­ 代码收集测试用例­­ 代码执行测试用例 ­­ 代码生成测试报告。

自动化的思路基本是跟手工测试一样的,建立在手工测试基础上的一种更高效率
的进阶和升华的方式。
测试框架 : unittest pytest,技术栈,提供了表示测试用例,发现测试用例,执行测试用例,生成测试结果报告…
自动化测试框架:利用好技术栈
【python+requests+openpyxl+pytest+loguru+allure】+【代码封装思想+数据分离思想+代码分层思想+数据驱动思想】-- 接口自动化测试框架 UI自动化测试框架 APP自动化测试框架

2、测试框架有哪些:【技术与时俱进】
pytest和unittest都是单元测试框架,可以用来编写测试用例,收集用例,运行用例,生成报告,实现前后置。
unittest : 内置库,有二次开发的库,比如unittestreport,不太灵活,不太智能。
pytest: 第三方库,现在用的更多。­­ 主流 智能需要安装:pip install pytest==7.3.1 【注意可以指定版本,不然会有一些兼容性的问题。 如果已经安装了高版本的pytest,直接使用pip指定版本安装,会自动覆盖,不需要手动卸载】
3、pytest编写测试用例 【2种方式】
1)测试函数的形式写: 函数名要以test开头,才会被识别为pytest的用例。
2) 测试类的形式写: 类名要以Test开头,类里面的方法也要以test开头 才会被识别为pytest的用例。

运行pytest用例:
1) 点击三角符号运行,只运行当前三角符号标注的用例;

  • 点击函数/方法前面的,只运行当前函数/方法的用例
  • 点击测试类,运行类下面的所有符合命名的用例
    2) 右键py文件-run, 运行当前py文件中所有符合命名规则的用例

思考: 完整项目框架里每个模块单独用一个py文件管理,

  • 注册模块-py文件,登录模块-py文件 == 放在用例层目录下管理,testcases
  • 多个模块、py文件里的用例,批量执行 == 需要收集所有模块的用例,一起执行。

# 1)测试函数的形式写: 函数名要以test开头
def test_demo1():
    assert "登录成功" == "登录成功"

def test_demo2():
    assert "用户名或密码错误" == "登录成功"

# 区别下普通函数
def run_demo1():
    assert "运行失败" == "运行成功"


# 2) 测试类的形式写: 类名要以Test开头,类里面的方法也要以test开头
class TestDemo:
    def test_register1(self):
        assert "注册成功" == "注册成功"

    def test_register2(self):
        assert "用户名已存在" == "注册成功"

猜你喜欢

转载自blog.csdn.net/u012454429/article/details/146343629
今日推荐