• python参数化和工具参数化的操作


    我们知道想要日常测试参数化的操作有两种方法第一种使用工具就是postman和jmeter进行文件参数化 

    https://www.cnblogs.com/weilemeizi/p/11446514.html

    https://www.cnblogs.com/weilemeizi/p/9002852.html

    另外一种代码就是使用python代码实现参数化 

    import unittest
    import my_function
    import HTMLTestRunner
    import parameterized 需要安装这个模块
    def add(a,b):
    return a+b
    class TestAdd(unittest.TestCase):
    def test_add_normal(self):
    '''正常测试加法的,by huoziyang'''
    result=my_function.add(1,2)
    self.assertEqual(3,result)
    def test_add_error(self):
    '''测试失败使用'''
    result=my_function.add(1,2)
    self.assertEqual(4,result)
    def test_add_error2(self):
    '''测试失败有msg的'''
    result=my_function.add(1,2)
    self.assertEqual(4,result,'正常整数加法没有通过')
    @parameterized.parameterized.expand(#必须这么传值
    [
    [1, 2, 3],
    [-1, 2, 1],
    [-1, 2, 2],
    ]
    )
    def test_param_add(self, a, b, c): # 参数化的函数
    result =add(a,b)#这两句就是调用
    self.assertEqual(c,result,'预期是%s,实际结果是%s'%(c,result))
    if __name__ == '__main__':
    test_suite = unittest.makeSuite(TestAdd)
    with open('report.html','wb') as fw:
    runner = HTMLTestRunner.HTMLTestRunner(stream=fw,title='天马座测试报告',
    description='天马座接口测试报告',
    verbosity=2
    )
    runner.run(test_suite)#加了这条才会执行
    效果图

    另外一种测试报告模板

    import unittest
    import my_function
    import HTMLTestRunnerNew
    import HTMLTestRunner
    import parameterized
    def add(a,b):
    return a+b
    class TestAdd(unittest.TestCase):
    def test_add_normal(self):
    '''正常测试加法的,by huoziyang'''
    result=my_function.add(1,2)
    self.assertEqual(3,result)
    def test_add_error(self):
    '''测试失败使用'''
    result=my_function.add(1,2)
    self.assertEqual(4,result)
    def test_add_error2(self):
    '''测试失败有msg的'''
    result=my_function.add(1,2)
    self.assertEqual(4,result,'正常整数加法没有通过')
    @parameterized.parameterized.expand(#必须这么传值
    [
    [1, 2, 3],
    [-1, 2, 1],
    [-1, 2, 2],
    ]
    )
    def test_param_add(self, a, b, c): # 参数化的函数
    result =add(a,b)#这两句就是调用
    self.assertEqual(c,result,'预期是%s,实际结果是%s'%(c,result))
    if __name__ == '__main__':
    test_suite = unittest.makeSuite(TestAdd)
    with open('report.html','wb') as fw:
    runner = HTMLTestRunnerNew.HTMLTestRunner(stream=fw,title='通软测试报告',
    description='通软接口测试报告',
    verbosity=2
    )
    runner.run(test_suite)

  • 相关阅读:
    Vue数组循环
    vue使用swiper6分页器踩坑
    Vue基础语法(四)
    Vue安装jquery
    Vue基础语法(三)
    Too Rich(贪心加搜索)
    ZOJ Anagrams by Stack(堆栈中的搜索)
    最长子序列和(分治法实现)
    幸运数字(数位dp)
    蜥蜴和地下室(深搜)
  • 原文地址:https://www.cnblogs.com/weilemeizi/p/14538401.html
Copyright © 2020-2023  润新知