运行测试套件截图不生效的解决办法
问题:直接运行测试用例,调用的截图方法就能成功;放到测试套件里运行就没有截图。
原因:相对路径问题,由于测试套件和测试用例在不同文件夹内。将png存放路径修改为绝对路径即可。
先获取当前路径,可打印到控制台
project_path = os.path.abspath(os.path.join(os.path.dirname(os.path.split(os.path.realpath(__file__))[0]), '.'))
print(project_path)
解决办法: 由于我的图片目录如下图: 修改截图的保存路径如下:
def test_save_screen(self):
# self.log=Log()
date_time = datetime.datetime.now()
date = date_time.strftime('%Y-%m-%d')
st = date_time.strftime('%Y_%m_%d_%H_%M_%S')
file_name = st + '.png' # 自定义图片名
project_path = os.path.abspath(os.path.join(os.path.dirname(os.path.split(os.path.realpath(__file__))[0]), '.'))
print(project_path)
#path = './../../report/png/' + date + '/' # 指定保存截图路径 相对路径 之前错误的路径
path=project_path+'/report/png/'+date + '/' #指定保存截图的 绝对路径
whole_path = path + file_name
self.driver.get_screenshot_as_file(whole_path) # 截图
结果截图
|