Python自动化测试实战篇(8),pytest 测试用例初始化的五种方法与清洗方法

在这里插入图片描述
这些是之前的文章,里面有一些基础的知识点在前面由于前面已经有写过,所以这一篇就不再详细对之前的内容进行描述
Python自动化测试实战篇(1)读取xlsx中账户密码,unittest框架实现通过requests接口post登录网站请求,JSON判断登录是否成功

Python自动化测试实战篇(2)unittest实现批量接口测试,并用HTMLTestRunner输出测试报告

Python自动化测试实战篇(3)优化unittest批量自动化接口测试代码,ddt驱动+yaml实现用例调用,输出HTMLTestRunner测试报告

Python自动化测试实战篇(4)selenium+unttest+ddt实现自动化用例测试,模拟用户登陆点击交互测试,Assert捕获断言多种断言

Python自动化测试实战篇(5)优化selenium+unittest+ddt,搞定100条测试用例只执行前50条

Python自动化测试实战篇(6)用PO分层模式及思想,优化unittest+ddt+yaml+request登录接口自动化测试

Python自动化测试实战篇(7),初识pytest做一个简单的接口测试,allure输出可视化测试报告

  • 1.什么是是自动化测试环境初始化与清除
  • 2.自动化测试环境初始化与清除有哪些步骤?
  • 3.pytest中如何进行用例初始化与清洗方法
    • 1.类内用例初始化与清洗
    • 2.模块级别
    • 3.类级别
    • 4.函数级别
    • 5.方法级别

1.什么是是自动化测试环境初始化与清除

每一次进行自动化测试之前都需要对测试环境进行一个初始化,以确保测试环境的一致性与可靠性,每次测试完成之后,需要对测试环境进行清除,为下一次测试做准备,避免测试环境不一致导致测试结果不准确,提高测试的可重复性和准确性。

2.自动化测试环境初始化与清除有哪些步骤?

开始测试
测试环境初始化
测试完成
测试环境清除

Python自动化测试实战篇(8),pytest 测试用例初始化的五种方法与清洗方法_第1张图片

3.pytest中如何进行用例初始化与清洗方法

1.类内用例初始化与清洗

方法级别初始化、清除
就是setup初始化
teardown清除环境

import pytest


class Test():
    def setup(self):
        print("用例初始化")

    def teardown(self):
        print("用例清除")
    def test_1(self):
        print("第一个用例")

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

pytest.main用法详解

Python自动化测试实战篇(8),pytest 测试用例初始化的五种方法与清洗方法_第2张图片

2.模块级别

模块级别内容就是所有模块
都执行全局方法setup_module作为初始化
teardown_module作为清除环境

def setup_module():
    print("用例初始化")
    
def teardown_module():
    print("用例清除")
import pytest


def setup_module():
    print("用例初始化")


def teardown_module():
    print("用例清除")

class Test():

    def test_1(self):
        print("第一个用例")
class Test_01():
    def test_2(self):
        print("这是第二个模块用例")

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

Python自动化测试实战篇(8),pytest 测试用例初始化的五种方法与清洗方法_第3张图片

3.类级别

定义一个类方法 setup_class(testmod)和 teardown_class(testmod)
这个方法只针对当前类进行执行一次的操作,后续不执行该操作

import pytest

class Test_01():
    @classmethod
    def setup_class(testmod):
        print("用例初始化")
    @classmethod
    def teardown_class(testmod):
        print("用例清除")
    def test_1(self):
        print("第一个用例")
class Test_02():
    def test_2(self):
        print("这是第二个模块用例")

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

Python自动化测试实战篇(8),pytest 测试用例初始化的五种方法与清洗方法_第4张图片

4.函数级别

函数级别方法setup_function()初始化
teardown_function()进行清除

import pytest

def setup_function():
    print("用例初始化")
def teardown_function():
    print("用例清除")

def test_class():
    print("类外测试")


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

Python自动化测试实战篇(8),pytest 测试用例初始化的五种方法与清洗方法_第5张图片

5.方法级别

方法级别初始化setup_method(self)
清洗teardown_method(self)

import pytest


class Test():
    def setup_method(self):
        print("方法级别初始化")
    def teardown_method(self):
        print("方法级别清洗")
    def test_01(self):
        print("测试用例")



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

Python自动化测试实战篇(8),pytest 测试用例初始化的五种方法与清洗方法_第6张图片

在这里插入图片描述

你可能感兴趣的:(软件测试,python,pytest,测试用例,自动化测试,测试)