(HTMLTestRunner增加图表样式显示)二:增加截图功能

摘要:
在上一篇文章中,我们向HTMLTestRunner添加了一个饼图,这使我们的报告更加直观,但细节不太令人满意。例如,当我们查看已经通过、失败或失败的用例时,HTMLTestRunner会给我们一段很大的代码,这会让人看起来很大。如果我们给出一张截图,那么一眼就能更直观地了解用例的执行情况。答案是肯定的。向HTMLTestRunner添加屏幕截图分为两部分。第一部分是编写截图,第二部分是修改HTMLT

  上一篇文章写了给HTMLTestRunner增加饼状图,这让我们的报告看起来更直观一些,但是细节方面还不是太让人满意,比如,我们查看执行通过、失败、错误的用例时,HTMLTestRunner给出了一大段代码,让人看着头大,如果给出截图是否更直观,一目了然的了解用例执行情况呢,答案是肯定的。

  给HTMLTestRunner增加截图分两部分,第一部分,需要编写截图功能,第二部分就是修改HTMLTestRunner给HTML样式增加截图路径以及展示样子

----------------------------------------------------------------------------------------------------------------------------------------------------------------------

效果展示:

(HTMLTestRunner增加图表样式显示)二:增加截图功能第1张

第一步:增加截图功能

selenium提供了截图函数get_srceenshot_as_file(),我们只要调用就好了,需要我们自己写的是,截图保存位置和截图名称,根据个人喜好来定。

下面代码,以及把截图功能封装在一个函数中,我们只要传入driver、文件名称、路径就好,路径是写死的

# !/usr/bin/env python
# -*- coding: UTF-8 –*-
__author__ = 'Mr.Li'
from selenium import webdriver
import os

#截图函数
def insert_img(driver,file_name,file_path):
    base_dir = os.path.dirname(os.path.dirname(os.path.dirname(__file__)))
    file_path = base_dir + "/YJF-UI_TestCode/report/image/" + file_name
    driver.get_screenshot_as_file(file_path)
    print('Screenshot_Path:',file_path)

if __name__ == '__main__':
    driver = webdriver.Chrome()
    driver.get('http://www.baidu.com')
    insert_img(driver,'baidu.png')
    driver.quit()

免责声明:文章转载自《(HTMLTestRunner增加图表样式显示)二:增加截图功能》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇Inkscape 中使用 LaTeX 数学公式[redis] redis在线系统热迁移的方案与记录下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

solidity语言11

函数修饰符 pragma solidity ^0.4.11; contract owned { address owner; // 构造函数 function owned() public { owner = msg.sender; } // 此合约定义的函数修饰符不使用,用于衍生的合约...

Android Studio 自定义签名,代码段快捷键

此篇文章主要介绍如何在Android Studio中函数如何添加注释,使其和eclipse一样方便的添加注释 Android Studio默认函数注释为 /** * */ 下面方法将要改为如下格式 1 2 3 4 5 /**  *  * @author zony  * @time 15-11-25 下午2:41  */ 步...

SAP ABAP RFC接口通用日志工具:abap fm logger

很早之前就想写个能记录函数模块日志的通用工具,最早尝试时,没有想清楚插入代码的体积过大问题的解决方案。在一些群友的提醒下,了解到可以用宏来处理这一问题。不过当时比较忙,没有动笔,后来也渐渐忘记。最近又想起这件事,花了2天完成了一个初步的实现。介绍给大家,希望能有参考价值。 本文链接:https://www.cnblogs.com/hhelibeb/p/13...

oracle查询数据中包含字段替换其他内容

有个需求,三个页面类型的表单调用同一个数据表(反馈、计划、汇总三大类),为了区分三大类,我在表单加了反馈类型字段。 计划表单手动维护,反馈表单的时候,自动填充数据(需要查询计划表单维护的数据,反馈类型是计划了,但是现在是做反馈表单) 通过sql的函数replace,实现查询的时候如果是计划的,替换成反馈汉字,这样查询的数据返回表单是反馈类型了,用户维护其...

名称空间

一、函数对象 定义:函数名存放的就是函数的地址,所以函数名就是对象,称之为函数对象 可以直接被引用 可以当作函数参数传值 可以作为函数发返回值 可以作为容器类型的元素 def add(a,b): return a+b def low(a,b): return a-b def jump(a,b): return a*b def...

ucos(八)软件定时器

一、概述   内核提供了一个模拟定时器的机制,类似于任务,但是占用资源少,只能做一些简单的定时控制,如可以定时的喂狗、控灯。在软件定时器,不能添加时间管理函数、阻塞等待函数(等待互斥锁/信号量/事件标志组/消息队列)。 1.创建软件定时器 void OSTmrCreate (OS_TMR *p_tmr, CPU_CHAR *p_name, OS_TIC...