封装selenium自动化框架中的截图功能

Posted ZhuQue

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了封装selenium自动化框架中的截图功能相关的知识,希望对你有一定的参考价值。

  对selenium自带的截图功能进行封装:

  以下为封装的代码,自定义一个.py文件即可,图片路径自己设置一个。

 1 #coding:utf-8
 2 
 3 class Screen(object):
 4     \'\'\'
 5         封装的截图类,webdriver自带的get_screenshot_as_file()
 6         在使用过程中,注意driver参数的传递
 7     \'\'\'
 8     def __init__(self, driver):
 9         \'\'\'
10             写一个构造函数,有一个参数driver
11         \'\'\'
12         self.driver = driver
13 
14 
15     def save_screen(self):
16         \'\'\'
17             截图并保存在根目录下的Screenshots文件夹下,并传输参数caseName
18         \'\'\'
19         self.log = TestLog().getlog()
20         img_time = time.strftime("%Y_%m_%d_%H_%M_%S_")
21         img_path = "D:\\\\python\\\\workspace\\\\pythontest\\\\screenshot\\\\"
22         img_name = img_path + img_time + \'screen.png\'
23         self.img_info = "截图路径:" + img_name
24         try:
25             self.driver.get_screenshot_as_file(self.img_info)
26             self.log.info(self.img_info)
27         except Exception as e:
28             self.log.info("截图异常->", e)
29             format(e)
View Code

   我认为这其中主要的难点就是driver参数的传递。

  前提必须引用selenium中的webdriver,赋值driver = webdriver.Firefox(),然后把driver参数传递到封装的模块中。

以上是关于封装selenium自动化框架中的截图功能的主要内容,如果未能解决你的问题,请参考以下文章

Python&Selenium 关键字驱动测试框架之数据文件解析

Python+Selenium框架设计篇之4-框架内封装基类和实现POM

软件测试自动化中selenium中截图怎么封装

selenium(12)-web UI自动化项目实战(PO模式,代码封装)

2w元教学课程,免费分享,教你搞定selenium自动化框架封装!

selenium + python自动化测试unittest框架学习webdriver的二次封装