python+selenium之测试报告

测试报告是selenuim整合unitest,HTMLTestRunner()生成测试报告/BSTestRunner(美化测试报告)

HTMLTestRunner/BSTestRunner.py文件放的路径是python安装目录bin目录下

HTMLTestRunner.py和BSTestRunner.py文件要写修改里面的内容

1.下载HTMLTestRunner地址:http://tungwaiyip.info/software/HTMLTestRunner.html

2.下载的HTMLTestRunner.py是针对python2写的,所以针对python3需要适当更改其内容

步骤:

(一)新建文件testceshibaogao

文件下新建测试用例test_denglu.py文件

import unittest
from selenium import webdriver
import time

class TestCeshibaogao(unittest.TestCase):
    def setUp(self):
        print("测试用例执行开始:")
        self.driver=webdriver.Firefox()
        self.driver.implicitly_wait(5)

    def tearDown(self):
        self.driver.quit()
        print("测试用例执行结束!")

    def test_denglu(self):
        '''登录帝国软件'''
        driver=self.driver
        driver.get("http://localhost/news/")
        driver.find_element_by_name("username").send_keys("51zxw")
        driver.find_element_by_name("password").send_keys("123456")
        driver.find_element_by_name("Submit").click()
        time.sleep(6)
        po=driver.find_element_by_partial_link_text("我的空间")

        # self.assertTrue('我的空间'in po.text)
        self.assertEqual(po.text,'我的空间')


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

(二)新建一个测试报告testreport.py文件

import unittest
from test_denglu import *
from BSTestRunner import BSTestRunner
import time

report_dir='./report'
test_dir='./'

print("start run test case")
discover=unittest.defaultTestLoader.discover(test_dir,pattern="test_denglu.py")

now=time.strftime("%Y-%m-%d %H_%M_%S")
report_name=report_dir+'/'+now+'result.html'

print("start write report..")
with open(report_name,'wb') as f:
    runner=BSTestRunner(stream=f,title="登录测试报告" ,description="测试用力执行情况")
    runner.run(discover)
    f.close()

print("Test end")