python+selenium,使用HTMLTestRunner跑的测试报告里报错了,为啥这样?
我单独使用
if __name__ == '__mian__':
unittest.mian()
运行我的test_*.py文件时,能够正常运行,使用HTMLTestRunner跑时,测试报告error提示:selenium.common.exceptions.WebDriverException: Message: Service chromedriver unexpectedly exited. Status code was: 1
下面是我的runsest.py代码
import sys
import time
from HTMLTestRunner import HTMLTestRunner
#接口
import unittest
test_dir=r'../src/testcase'
discover = unittest.defaultTestLoader.discover(test_dir, pattern='test_*.py')
if __name__=='__main__':
now = time.strftime("%Y-%m-%d %H_%M_%S")
filename = r'../'+ now + '_测试报告.html'
fp = open(filename,'wb')
runner = HTMLTestRunner(stream=fp,
title= u'测试报告',
description = u'用例执行情况'
)
run = HTMLTestRunner()
runner.run(discover)
fp.close()
补充:我改过python安装目录Lib\subprocess.py文件里的shell=False,改成shell=True。
大佬们能不能帮帮我(╥ω╥`) (╥ω╥`) (╥ω╥`) (╥ω╥`) (╥ω╥`) (╥ω╥`) (╥ω╥`) (╥ω╥`) (╥ω╥`) (╥ω╥`)
找到问题的原因了,是因为我在testcase里chromedriver的路径为相对路径,testcase里我写的是:
self.driver = webdriver.Chrome(‘..\..\driver\chromedriver.exe’)
把他变为绝对路径..\\driver\chromedriver.exe,我的runtest.py就能识别成功;
但是,我的testcase就无法识别这个路径了,我的解决办法就是把runtest.py去掉,把创建测试报告html的代码写在我的testcase里。。。。。。(。•́︿•̀。)
根据错误提示信息,是selenium的webdriver异常退出,要运行HTMLTestRunner,首先要配置好chromedriver环境,检查是否安装了selenium及chromedriver及相关配置是否正确。具体可参考:https://www.jianshu.com/p/96e39cc75299