# coding=utf-8
from selenium import webdriver
import unittest, time
import HTMLTestRunner # 引入 HTMLTestRunner 包
class Baidu(unittest.TestCase):
def setUp(self):
self.driver = webdriver.Firefox()
self.driver.implicitly_wait(10)
self.base_url = "http://www.baidu.com/"
self.verificationErrors = []
# 百度搜索用例
def test_baidu_search(self):
driver = self.driver
driver.get(self.base_url)
driver.find_element_by_id("kw").send_keys("HTNMLTestRunner")
driver.find_element_by_id("su").click()
def tearDown(self):
self.driver.quit()
self.assertEqual([], self.verificationErrors)
if __name__ == "__main__":
# 测试套件
testunit = unittest.TestSuite()
# 添加测试用例到测试套件中
testunit.addTest(Baidu("test_baidu_search"))
# 定义个报告存放路径
filename = r'.\result.html'
fp = open(filename, 'wb')
# 定义测试报告
runner = HTMLTestRunner.HTMLTestRunner(
stream=fp,
title=u'百度搜索测试报告',
description=u'用例执行情况:')
# 运行测试用例
runner.run(testunit)
# 关闭报告文件
fp.close()
1.为什么我的代码运行成功了,但测试报告没有生成?
因为我一直是快捷键运行代码,用unittest来启动,就没执行自己的main,执行的是unittest的main。详情请参照:http://blog.csdn.net/xie_0723/article/details/50825310
解决方法:Run-Run-运行代码。或者alt+shift+f10-运行代码
2.上面所说的2中运行方式有什么不同呢?
第一种,直接运行,执行的是unittest的man
第二种,就从自己的main入口进入执行的
更多详情请参照:http://www.ithao123.cn/content-6035445.html
3.我测试报告也正常生成了,但打开html的测试报告一片空白,这是为什么?
因为你没关闭文件。
解决方案:fp.close()