webdriver的截图功能十分强悍,无论页面多长,webdriver都能比较完美的截到完整的页面。
python代码:
# -*- coding: utf-8 -*-
from selenium import webdriver
import unittest
import os, sys, time
from pathlib import Path
# 初始化实例
driver = webdriver.Firefox()
current_time = time.strftime("%Y-%m-%d-%H_%M_%S", time.localtime(time.time()))
current_time1 = time.strftime("%Y-%m-%d", time.localtime(time.time()))
print(current_time)
print(current_time1)
# 设置存储图片路径,测试结果图片可以按照每天进行区分
# 通过if进行断言判断
# driver.get("https://www.csdn.net/")
driver.get("https://www.processon.com/view/link/5a815fafe4b064e9ddc3e018")
# 新创建路径“.”表示当前整个.py文件的路径所在的位置,“\”路径分割符,其中的一个是""转义符
pfilename = u'.\image'
pic_path = pfilename + '\' + current_time1 + '_' + current_time + '.png'
# 判断文件夹是否存在,不存在就新建一个新的
if Path(pfilename).is_dir():
pass
else:
Path(pfilename).mkdir()
print(pic_path)
time.sleep(2)
print(driver.title)
# 截取当前url页面的图片,并且将截取的图片保存在指定的路径(pic_path)
driver.save_screenshot(pic_path)
if u'CSDN-专业IT技术社区' == driver.title:
print('Assertion test pass')
else:
print('Assertion test fail')
driver.quit()
备注:浏览器驱动放到python路径下(可以就放到脚本当前路径)