zoukankan      html  css  js  c++  java
  • python测试用框架unittest & HTMLTestRunner

    import unittest
    import requests
    import os, time,sys
    from HTMLTestRunner import HTMLTestRunner
    from caculate import *


    class TestClass(unittest.TestCase):
    @classmethod #类方法:每次运行测试类只执行一次
    def setUpClass(cls):
    print("这是测试整个类前要执行的方法")

    def setUp(self):
    print("这是每一个测试方法前面运行的方法")

    def tearDown(self):
    print("这是每一个测试方法后面运行的方法")

    def test_first(self):
    print("这是测试方法1-进行接口测试demo")
    # 这是利用requests第三方库(进行发请求,收响应)向百度发个get请求
    res = requests.get('http://www.baidu.com')
    # 这是输出返回结果
    print(res.text)

    def test_second(self):
    print("这是测试方法2-研究一下python的断言")
    assert 1 == 1
    assert {'name': 'linda', 'age': 18} == {'name': 'linda', 'age': 188}
    a = 'hello'
    age = 35
    assert a in 'hello world'
    assert 20 < age < 80
    print("这是测试方法2-研究一下unittest的断言")
    self.assertGreater(1, 2, '这是不可能的')
    self.assertIn(a, ' world', msg='没有hello呀')

    def test_third(self):
    print("这是测试方法3-单元测试-测试开发写的计算器的代码功能是否能实现")
    self.assertEqual(3, add(1, 2))
    self.assertNotEqual(3, add(2, 2))
    self.assertEqual(1, minus(3, 2))
    self.assertEqual(6, multi(3, 2))
    self.assertEqual(2, divide(6, 3))
    self.assertEqual(2, divide(5, 2))

    @classmethod
    def tearDownClass(cls):
    print("这是测试整个类后要执行的方法")


    if __name__ == '__main__':
    # 设置报告的路径
    report_path = os.path.join(os.path.dirname(__file__), 'report')
    # 通过当前时间命名报告
    now = time.strftime("%Y-%m-%d %H_%M_%S", time.localtime())
    filename = report_path + "/" + now + "_result.html"
    # 建立一个套件-就是可以装多个用例
    suite = unittest.TestSuite()
    # 在这个套件中添加测试用例(可能通过类名,模块名等加载,这次用类名)
    suite.addTests(unittest.TestLoader().loadTestsFromTestCase(TestClass))
    with open(filename, 'wb') as fp:
    runner = HTMLTestRunner(
    stream=fp,
    title='测试报告',
    description='测试用例')
    runner.run(suite)

    #执行测试时不能用unittest模式下执行,需要在命令行模式下执行才能生成测试报告
  • 相关阅读:
    【转】CUDA5/CentOS6.4
    【转】centos 6.4 samba 安装配置
    【转】Install MATLAB 2013a on CentOS 6.4 x64 with mode silent
    【转】Getting xrdp to work on CentOS 6.4
    【VLFeat】使用matlab版本计算HOG
    Unofficial Windows Binaries for Python Extension Packages
    March 06th, 2018 Week 10th Tuesday
    March 05th, 2018 Week 10th Monday
    March 04th, 2018 Week 10th Sunday
    March 03rd, 2018 Week 9th Saturday
  • 原文地址:https://www.cnblogs.com/1026164853qqcom/p/11273816.html
Copyright © 2011-2022 走看看