因為用心,才會喜歡

粥雨

Pytest - 概述&入门

Pytest - 概述&入门


简介

  • Pytest是一款强大的python自动化测试工具,可以胜任各种类型或者级别的软件测试工作;

  • pytest提供了丰富的功能,包括assert重写,第三方插件,以及其他测试工具无法比拟的fixture模型;

  • pytest是一个软件测试框架,是一款命令行工具,可以自动找到测试用例执行,并且回报测试结果;

  • 丰富的基础库,可以大幅度提高用户编写测试用例的效率。具备扩展性,用户可以自己编写插件,或者安装第三方提供的插件;

  • 以很容易地与其他工具集成到一起使用。比如持续集成,web自动化测试等。


安装

pip install pytest

image


用例约束

用Pytest写用例时候,一定要按照下面的规则去写,否则不符合规则的测试用例是不会执行的。

  • 用例收集规则:
    • test_ 开头的测试文件,例如 test_login.py
    • Test 开头的测试类,例如 class Test_login:
    • test_ 开头的测试函数,例如 def test_login():

  • 执行用例规则:
    • 运行指定目录下用例: pytest 目录/目录
    • 运行指定python文件: pytest 目录/文件名.py
    • 运行指定类或者函数: pytest 目录/文件名.py::类名::函数名

快速入门

test_login.py

# -*- coding:utf-8 -*-
import pytest

# 测试类名称以Test开头
class Test_Login:

    # 函数命名使用test开头或结尾
    def test_a(self):
        abc = 0+1
        assert abc  # 断言成功

    # 在单测类中,可以包含一个或多个test开头的函数
    def test_b(self):
        abc = 1-1
        assert abc  # 断言失败

if __name__ == "__main__":
    pytest.main(['-s', "test_login.py"])

PS:

我这边学习Python自动化是跟着三个大佬学习的,可以去他们的主页看一看,都还挺不错的,也感谢三位大佬的分享;

小菠萝测试笔记:https://www.cnblogs.com/poloyy/tag/Pytest/

上海悠悠:https://www.cnblogs.com/yoyoketang/tag/pytest/

linux超:https://www.cnblogs.com/linuxchao/tag/pytest/

posted @ 2023-05-15 17:58  粥雨  阅读(165)  评论(0编辑  收藏  举报