pytest的基础入门

pytest判断用例的成功或者失败

pytest识别用例失败时会报AssertionError或者xxxError错误,当捕获异常时pytest无法识别到失败的用例

pytest的fixture夹具

pytest的参数化

python 复制代码
#coding:utf-8
import pytest

from PythonProject.pytest_test.funcs.guess_point import get_the_number_of_points
test_datas = [6,9,10,4,5]
class TestGuessPoint:
    @classmethod
    def setup_class(cls):
        print("测试类当中,第一个执行用例之前,做的准备工作代码...")
    @classmethod
    def teardown_class(cls):
        print("测试类当中所有的用例执行完毕之后做的清理干工作...")
    # def setup_method(self):
    #     print("===每一个测试用例之前都要执行===")
    # def teardown_method(self):
    #     print("===每一个测试用例之后都要执行===")
    @pytest.mark.parametrize("case",test_datas)
    def test_guess(self,case):
        point = get_the_number_of_points()
        assert case == point

pytest和allure的结合

python 复制代码
#coding:utf-8
import pytest
import allure
from PythonProject.pytest_test.funcs.log_fuc import login
all_datas=[
    {"user":"1234","passwd":"123456","check":"恭喜登录成功"},
    {"user":"None123","passwd":"False12345","check":"用户名或密码不正确"},
    {"user":"123","passwd":"123456","check":"用户名长度小于4"},
    {"user":"12345","passwd":"12345","check":"密码长度小于6"}
]
# @pytest.mark.usefixtures("class_fix")
class TestLogin:
    # def setup_method(self):
    #     print("每一个测试用例之前执行")
    # def teardown_method(self):
    #     print("每一个测试用例都要执行的后置")

    @pytest.mark.parametrize("casep",all_datas)
    @allure.description("登录模块测试,后端管理员用户角色---")
    @allure.issue("https://www.baidu.com","bug地址")
    @allure.testcase("https://www.baidu.com","xx平台测试用例地址")
    def test_login(self,casep):
        res = login(casep.get("user"),casep.get("passwd"))
        assert res == casep.get("check")
相关推荐
姚青&2 天前
Pytest 测试用例编写
测试用例·pytest
Warren982 天前
Pytest Fixture 作用域与接口测试 Token 污染问题实战解析
功能测试·面试·单元测试·集成测试·pytest·postman·模块测试
serve the people4 天前
python环境搭建 (七) pytest、pytest-asyncio、pytest-cov 试生态的核心组合
开发语言·python·pytest
真智AI4 天前
用 LLM 辅助生成可跑的 Python 单元测试:pytest + coverage 覆盖率报告(含运行指令与排坑)
python·单元测试·pytest
Warren985 天前
Allure 常用装饰器:实战用法 + 最佳实践(接口自动化)
运维·服务器·git·python·单元测试·自动化·pytest
Warren986 天前
Pytest Fixture 到底该用 return 还是 yield?
数据库·oracle·面试·职场和发展·单元测试·pytest·pyqt
Warren986 天前
Pytest Fixture 作用域详解:Function、Class、Module、Session 怎么选
面试·职场和发展·单元测试·pytest·pip·模块测试·jira
我的xiaodoujiao7 天前
使用 Python 语言 从 0 到 1 搭建完整 Web UI自动化测试学习系列 44--将自动化测试结果自动推送至钉钉工作群聊
前端·python·测试工具·ui·pytest
我的xiaodoujiao8 天前
使用 Python 语言 从 0 到 1 搭建完整 Web UI自动化测试学习系列 45--生成项目需要的requirements.txt依赖文件
python·学习·测试工具·pytest
月明长歌8 天前
全栈测试修炼指南:从接口策略到 Python+Pytest+Allure 企业级架构
python·架构·pytest