思路:
1 新建screenshot文件夹,不存在则创建该目录
2 在screenshot文件夹下新建当日日期文件夹,比如20190110;不存在则创建该目录
3 截图保存到当日文件夹,且截图文件名加上时间戳。 避免用例执行多次,截图被覆盖。
import os from datetime import datetime def getscreenshot(driver,file_name="页面截图"): screenshot_dir ='./screenshot' nowdate = datetime.now().strftime('%y%m%d') # 当日日期 screenshot_today_dir = os.path.join(screenshot_dir, nowdate) if not os.path.exists(screenshot_dir): # 不存在则创建该目录 os.mkdir(screenshot_dir) if not os.path.exists(screenshot_today_dir): os.mkdir(screenshot_today_dir) nowtime = datetime.now().strftime('%H%M%S%f') filename=nowtime+file_name+".png" filepath=os.path.join(screenshot_today_dir,filename) driver.get_screenshot_as_file(filepath) # 截图,文件名=filename+时间戳 else: nowtime = datetime.now().strftime('%H%M%S%f') filename = nowtime + file_name + ".png" filepath = os.path.join(screenshot_today_dir, filename) driver.get_screenshot_as_file(filepath) # 截图,文件名=filename+时间戳 else: if not os.path.exists(screenshot_today_dir): os.mkdir(screenshot_today_dir) nowtime = datetime.now().strftime('%H%M%S%f') filename=nowtime+file_name+".png" filepath=os.path.join(screenshot_today_dir,filename) driver.get_screenshot_as_file(filepath) # 截图,文件名=filename+时间戳 else: nowtime = datetime.now().strftime('%H%M%S%f') filename = nowtime + file_name + ".png" filepath = os.path.join(screenshot_today_dir, filename) driver.get_screenshot_as_file(filepath) # 截图,文件名=filename+时间戳
4 调用
#coding =utf-8 from selenium import webdriver import time from yishangdai_web.testcase.截图上加上时间戳 import getscreenshot driver = webdriver.Chrome() driver.get("http://www.baidu.com") time.sleep(3) getscreenshot(driver) driver.quit()
运行后: