python自动化笔记(九)——unittest框架四大核心概念学习

本文详细介绍了Python unittest框架的四大核心概念:测试用例编写规范,TestSuite和TestLoader的用法,执行用例及测试报告的生成,以及前置后置条件fixture的使用。此外,还探讨了用例执行顺序和数据驱动测试(ddt)的实现方法,为自动化测试提供全面指导。
摘要由CSDN通过智能技术生成

unittest框架最核心的四个概念:
在这里插入图片描述
一、unittest中测试用例的编写规范

在测试类当中,以test_开头,定义测试函数
每一个test_开头的函数,就是一个测试用例

用例编写步骤:
1 导入unittest模块,被测文件或者其中的类
2 创建一个测试类,并继承unittest模块中的TestCase类
3 定义测试函数,函数名以test_开头(一个test开头的方法就是一条测试用例

4 将测试用例执行的代码逻辑写到对应的测试方法中:
第一步:准备用例数据
第二步: 调用被测的功能函数(发送请求调用接口),获取实际结果
第三步: 断言,预期结果与实际结果的对比

下面编写测试登陆功能的测试用例:

登录的功能逻辑定义在login模块里
在这里插入图片描述

import unittest  # 引入 unittest
from python01.python02.login import login_check  # 导入login模块的登录函数


class TestLogin(unittest.TestCase):  # 定义测试类,继承unittest.TestCase
    def test_login_ok(self):  # 用例1
        # 第一步:准备用例数据
        params = {
   'username': "cyy", "password": 123456}
        expected = {
   "code":0,"msg":"登录成功"}
        # 第二步:调用被测的功能函数(发送请求调用接口),获取实际结果
        result = login_check(**params)
        # 第三步:断言
        self.assertEqual(result, expected)

上述只是执行了一条用例,下面再看下五条用例的:

用例1 账号密码正确
入参:账号cyy,密码:123456
预期结果:{“code”:0,“msg”:“登录成功”}
实际结果:

用例2 账号正确,密码错误
入参:账号cyy,密码:fdgg
预期结果:{“code”:1,“msg”:“账号或密码不正确”}
实际结果:

用例3 账号错误,密码正确
入参:账号cyy1,密码:123456
预期结果:{“code”:1,“msg”:“账号或密码不正确”}
实际结果:

用例4 账号为空
入参:账号,密码:123456
预期结果:{“code”:1,“msg”:“所有的参数不能为空”}
实际结果:

用例5 密码为空
入参:账号cyy,密码:
预期结果:{“code”:1,“msg”:“所有的参数不能为空”}
实际结果:

import unittest  # 引入 unittest
from python01.python02.login import login_check  # 导入login模块的登录函数


class TestLogin(unittest.TestCase):  # 定义测试类,继承unittest.TestCase
    def test_login_ok(self):  # 用例1
        # 第一步:准备用例数据
        params = {
   'username': "cyy", "password": 123456}
        expected = {
   "code":0,"msg":"登录成功"}
        # 第二步:调用被测的功能函数(发送请求调用接口),获取实际结果
        result = login_check(**params)
        # 第三步:断言
        self.assertEqual(result, expected)

    def test_login_password_wrong(self):  # 用例2
        params = {
   'username': "cyy", "password": "fdgg"}
        expected = {
   "code": 1, "msg": "账号或密码不正确"}
        result = login_check(**params)
        self.assertEqual(result, expected)

    def test_login_user_wrong(self):  # 用例3
        params = {
   'username': "cyy1", "password": 123456}
        expected = {
   "code": 1, "msg"
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值