如果我的鼻子测试失败,如何截取屏幕截图?

How do I capture a screenshot if my nosetests fail?(如果我的鼻子测试失败,如何截取屏幕截图?)

本文介绍了如果我的鼻子测试失败,如何截取屏幕截图?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在使用nosetests 运行selenium webdriver 测试.每当鼻子测试失败时,我想捕获屏幕截图.我怎样才能以最有效的方式做到这一点,无论是使用 webdriver、python 还是 nosetests 功能?

I am running selenium webdriver tests with nosetests. I want to capture a screenshot whenever nosetests fail. How can I do it in the most effective way, either by using webdriver, python or nosetests features?

推荐答案

我的解决方案

import sys, unittest
from datetime import datetime

class TestCase(unittest.TestCase):

    def setUp(self):
        some_code

    def test_case(self):
        blah-blah-blah

    def tearDown(self):
        if sys.exc_info()[0]:  # Returns the info of exception being handled 
            fail_url = self.driver.current_url
            print fail_url
            now = datetime.now().strftime('%Y-%m-%d_%H-%M-%S-%f')
            self.driver.get_screenshot_as_file('/path/to/file/%s.png' % now) # my tests work in parallel, so I need uniqe file names
            fail_screenshot_url = 'http://debugtool/screenshots/%s.png' % now
            print fail_screenshot_url
        self.driver.quit()

这篇关于如果我的鼻子测试失败,如何截取屏幕截图?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!

本文标题为:如果我的鼻子测试失败,如何截取屏幕截图?

基础教程推荐