一:定义一个加减乘除的计算(mathtest.py)
def add(a,b):
return a+b
def minus(a,b):
return a-b
def multi(a,b):
return a*b
def divide(a,b):
return a/b
二:对mathtest模块进行单元测试(unittest2.py)
import unittest
from mathtest import *
class TestMathCalculate(unittest.TestCase):
@classmethod
def setUpClass(cls):
print("执行测试用例")
def test_add(self):
print("add")
self.assertEqual(2,add(1,2),msg="测试失败")
def test_minus(self):
print("minus")
self.assertEqual(4,minus(5,1))
def test_multi(self):
print("multi")
self.assertTrue(multi(1,3)==3,"计算出错")
@classmethod
def tearDown(cls):
print("结束测试")
if __name__=='__main__':
unittest.main(verbosity=2)
三:简单webdriver爬虫搜索测试(unittest1.py)
import unittest
from selenium import webdriver
class SearchTest(unittest.TestCase):
def setUp(self):
self. driver=webdriver.Chrome()
self.driver.implicitly_wait(30)
self.driver.maximize_window()
self.driver.get("https://www.jianshu.com/search?q=python&page=1&type=note")
def test_search_by_category(self):
self.search_field=self.driver.find_element_by_class_name("search-input")
self.search_field.clear()
self.search_field.send_keys("monkey")
self.search_field.submit()
def tearDown(self):
self.driver.quit()
if __name__=='__main__':
unittest.main(verbosity=2)
四:用测试套件以及HTMLTestRunner生成测试报告
#coding=utf-8
import unittest
import HTMLTestRunner
import os
from unittest1 import SearchTest
from unittest2 import TestMathCalculate
#获得输出测试报告的路径
dir=os.getcwd()
##testloader得到测试文件中所有测试方法
search_tests=unittest.TestLoader().loadTestsFromTestCase(SearchTest)
calculate_tests=unittest.TestLoader().loadTestsFromTestCase(TestMathCalculate)
#创建测试套件集合二个测试
total_tests=unittest.TestSuite([search_tests,calculate_tests])
#打开报告文档
outfile=open(dir+"\reporttest.html", "w")
#配置htmltestrunner相关参数配置
runner=HTMLTestRunner.HTMLTestRunner(
stream=outfile,
title='Test Report',
description='Total Tests')
#执行测试套件
runner.run(total_tests)
测试执行结果:
在这里插入图片描述

网友评论