Python selenium 将屏幕截图保存在新创建的文件夹中

标签 python function selenium selenium-webdriver

我想创建一个文件夹,用于在测试失败时保存屏幕截图,如果仅在测试失败时创建该文件夹,那就太好了。

这目前不起作用,它没有将屏幕截图保存在文件夹内:

try:
    os.makedirs('./screenshots')
except OSError:
    pass

def check_exists_by_xpath(xpath):
    try:
        driver.find_element_by_xpath(xpath)
    except NoSuchElementException:
        return False
        driver.save_screenshot('screenshots/screenie.png')
    return True

最佳答案

这是因为 save_screenshot() 调用无法访问,该函数在进行屏幕截图之前返回。修复版本:

def check_exists_by_xpath(xpath):
    try:
        driver.find_element_by_xpath(xpath)
    except NoSuchElementException:
        driver.save_screenshot('screenshots/screenie.png')
        return False
    return True

关于Python selenium 将屏幕截图保存在新创建的文件夹中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27874002/

相关文章:

python - SQLAlchemy 不仅通过主键从身份映射中获取项目

python - NumPy 如何将复数矩阵相乘?

c++ - 将 lambda 作为参数传递 - 通过引用或值?

javascript - 如何在 Javascript 中从外部作用域调用函数?

javascript - 将数组中的数字相加。得到奇怪的输出。 JavaScript

java - 在 Windows XP 上自动启动 Selenium RC

xpath - 如何通过 Xpath 使用 Selenium 来确定元素的类?

jquery - Django 1.5 CSRF Ajax

python - 为什么 `for` 循环计算真值的速度如此之快?

javascript - Selenium webdriver TypeError : element. isDisplayed is not a function