`

webdriver截图功能

 
阅读更多

webdriver提供了截图函数,get_screenshot_as_file(),可以很方便的在自动化测试过程中运用到,记录测试过程。在我们遇到错误无法继续测试的时候,调用此函数截图,然后保存到指定路径。同样,每一个页面或者功能步骤,也可以进行截图保存,记录测试结果。

get_screenshot_as_file()没有很大的局限性,什么时候需要,什么时候拿过来用,下面拿登录豆瓣网做一个例子,代码如下:

# coding=utf-8
from selenium import webdriver
driver=webdriver.Firefox()

try:
    driver.get("https://www.douban.com/accounts/login?redir=https%3A//accounts.douban.com/")
    driver.find_element_by_id("email").clear()
    driver.find_element_by_id("email").send_keys("171XXXX15@qq.com")
    driver.find_element_by_id("password").clear()
    driver.find_element_by_id("password").send_keys("x520025ao1")
    driver.get_screenshot_as_file("d:/img/lod.png")
    driver.find_element_by_xpath("//input[@name='login']").click()

except:
    driver.get_screenshot_as_file("d:/img/error.png")

driver.close()

 上面代码中,有两处用到了截图,分别是登录页面跟抛出异常的时候。

 

小贴士:在恰当的地方调用截图函数,截图后管理好截图文件,更加方便我们对测试结果的跟踪与维护。

分享到:
评论

相关推荐

    Selenium Webdriver实现截图功能的示例

    在实现截图功能时,要注意的是,不是所有的WebDriver实现都支持截图功能。例如,使用浏览器驱动时,如果驱动程序没有实现TakesScreenshot接口,上述代码将无法编译通过。不过,大多数现代浏览器的驱动程序都实现了这...

    webdriver API中文版

    - **WebDriver 截图**:`takeScreenshot()` 方法可以捕获当前页面的快照。 - **页面等待**:使用 `implicitlyWait()` 或 `WebDriverWait` 确保页面元素加载完成。 ### 第4章:Remote WebDriver 1. **使用 Remote...

    WebDriver实验版.rar

    VB6版WebDriver实验,压缩包中有技术文档《WebDriver原理及实验》《WebDriver命令编程手册(英文版、中文机翻版)》,代码演示的功能有:操作浏览器自动打开百度、搜索mp3,获得网页源码,获得网页标题,网页截图,...

    Laravel开发-phpunit-selenium-webdriver

    Dusk还提供了一些高级功能,如截屏、网络请求跟踪和自定义宏,以满足复杂的测试需求。 以下是一个简单的Selenium WebDriver测试用例示例: ```php use Laravel\Dusk\Browser; use Tests\TestCase; class Example...

    selenium_webdriver学习

    最后,"selenium_webdriverѧϰ.pdf"这个文件很可能包含了详细的教程内容,包括实例代码、截图和解释,帮助初学者一步步实践和理解Selenium WebDriver的用法。记得下载后仔细阅读,动手实践,这样才能更好地掌握这个...

    WebDriver 自动化测试 selenide.zip

    WebDriver提供了与浏览器的直接交互,使得测试代码能够模拟用户的真实行为,从而验证应用程序的功能。Selenide是针对Java开发者的工具,它封装了WebDriver,提升了测试的易用性和可读性,特别适用于Web应用的端到端...

    python+webdriver api

    - **Python webdriver API**:webdriver API提供了一组功能强大的接口,用于控制浏览器的行为。结合Python语言,可以执行包括但不限于元素定位、页面交互、浏览器控制等自动化测试任务。 - **实践示例**:本章节...

    webdriver_guide-python(乙醇)

    Python 中的 Selenium Webdriver 提供了丰富的 API,可以进行点击、输入、滚动、截屏等操作,适用于网页自动化任务。 2. **安装 Selenium 和 Webdriver** 在开始之前,确保已经安装了 Python 和 pip。使用 pip ...

    selenium webdriver学习

    与早期的Selenium RC相比,WebDriver 提供了更强大的功能和更稳定的性能。WebDriver 直接与浏览器交互,而不依赖于服务器端的代理,这使得它能够提供更快的测试执行速度和更准确的测试结果。 #### 2. 快速入门 - *...

    MacBookpro M1 chromewebdriver

    10. **社区支持与更新**:保持对WebDriver和ChromeDriver的更新至关重要,因为它们经常发布新功能和修复。同时,开发者社区提供了丰富的资源和解决方案,遇到问题时可以寻求帮助。 总结来说,对于拥有M1芯片的...

    基于selenium webdriver 自动化测试框架

    该框架实现了检查点及用例失败自动截图功能,自动生成html测试报告及自动发送html邮件测试报告功能。 目前框架还不是特别完善,还需要写一些脚本实现自动化;学习该框架需要熟悉一定的HTML 和java基础,后续可以...

    Selenium WebDriver精讲

    第十章介绍如何结合使用jQuery来增强Selenium WebDriver的功能。通过调用jQuery的方法,可以在自动化测试中实现更多复杂的DOM操作。 **使用jQuery辅助测试的方法**: - 执行jQuery脚本来获取元素状态。 - 使用...

    WebDriver中实现对特定的Web区域截图方法

    首先,WebDriver 提供了一个基础的截图功能,可以截取整个网页的快照。以下是一个简单的示例: ```java public byte[] takeScreenshot(WebDriver driver) throws IOException { TakesScreenshot takesScreenshot =...

    webdriver-3.10.0

    在实际使用中,WebDriver可以与各种编程语言(如Java、Python、C#等)结合,通过编写脚本来控制浏览器执行各种操作,如导航、点击、填写表单、截屏等。开发者可以通过阅读`CHANGELOG`来了解3.10.0版本相较于前一版本...

    seleniumwebdriver

    截图功能 - **截图**: - 使用 `TakesScreenshot` 接口获取截图。 - 例如: `File screenshot = ((TakesScreenshot)driver).getScreenshotAs(OutputType.FILE);` #### 14. 模拟鼠标键盘操作 - **模拟操作**: - ...

    php-webdriver-bindings_2f79wi_php_

    WebDriver是一种自动化测试工具,允许程序员用各种编程语言控制Web浏览器,进行网页应用的功能测试和行为验证。这个PHP绑定库使得开发者能够用PHP编写测试脚本来驱动浏览器,检查网页的动态行为。 描述中的"使用php...

    [python]利用Selenium实现网页全屏截图+部分截图并web实现

    最后,如果你希望将这些截图功能部署到Web服务上,可以选择Flask这样的轻量级Web框架。创建一个简单的 Flask 应用,接收请求并返回截图: ```python from flask import Flask, request, send_file app = Flask(__...

Global site tag (gtag.js) - Google Analytics