python+Unittest+ddt 自动化测试

此为系列博客

  • Python测试 Coverage代码覆盖率
  • python+Unittest+ddt 自动化测试 (当前位置)
  • UnitTest+HTMLTestRunner 测试可视化

文章目录

        • 安装
        • 编写json文件
        • 开始测试

安装

执行pip install ddt

编写json文件

使用json库将字典直接转换成json文件,如下面代码所示

import json

test_dict = {
     'Test1':{
     'num1':1,'num2':1,'num3':2},
             'Test2':{
     'num1':10,'num2':1,'num3':11},
             'Test3':{
     'num1':1,'num2':-1,'num3':0}}
#dumps 将数据转换成字符串
json_str = json.dumps(test_dict,indent=4)# 使用indent格式化输出

# 保存文件
with open(r"你的路径\文件名.json","w") as f:
     f.write(json_str)
     print("保存json完成")

看一眼保存的文件,长这样:
python+Unittest+ddt 自动化测试_第1张图片

开始测试

搭建unittest框架,进行测试

import unittest
from ddt import ddt,file_data

@ddt # 在测试类前必须首先声明使用 ddt.ddt
class TestMethods(unittest.TestCase):
    # 如果有必要的话每次测试前在这里初始化
    def setUp(self):
        print('开始测试')

    # json文件路径
    @file_data(r'你的路径\文件名.json')
    # 必须test打头函数
    def test_login(self, num1,num2,num3):
        # 输出传入的数据
        print(num1,num2,num3)
        
        # 判断num1+num2是否等于num3
        self.assertEqual(num1+num2,num3)

if __name__ == '__main__':
    unittest.main()

看一看测试结果
python+Unittest+ddt 自动化测试_第2张图片

下一篇是使用HTMLTestRunner进行测试可视化,链接https://blog.csdn.net/weixin_42763696/article/details/105586862

你可能感兴趣的:(作业,python,python)