-----使用技术手段解决问题,坚信注重每一个细节,把熟悉的做到一种极致,一定会有创新出现。-----

封装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参数传递到封装的模块中。

posted @ 2018-01-20 15:10  ZhuQue  阅读(573)  评论(0编辑  收藏  举报
多年性能测试、测试管理经验,专注银行、支付、电商行业,倾向于性能、安全、 监控、调优、模型、管理等方向的研究。
使用技术手段解决问题,坚信注重每一个细节,把熟悉的做到一种极致,一定会有创新出现。