在selenium自动化运行期间调整网页大小以捕获整个页面的屏幕截图

时间:2015-01-22 15:58:37

标签: firefox selenium selenium-rc robotframework

如何在selenium自动化运行期间调整页面大小。 我希望在失败期间捕获整个页面,而不仅仅是它的可见部分。 任何线索都会很棒..

有关预期内容的更多详细信息:

实际页面尺寸: Actual page which by default opens 预期页面大小: Expected page size

3 个答案:

答案 0 :(得分:1)

内置Capture Page Screenshot

Selenium2Library 有一个方法,可以在一个屏幕截图中捕获整页。
但是,这在Chrome中不起作用。使用 Firefox PhantomJS 进行无头控制测试。

请务必将库包含在设置中。

*** Settings ***
Library         Selenium2Library

*** Test Cases ***  #or a keyword, suite setup ,...
Do The Thing
    Open Browser     ${url}    ${BROWSER}
    Maximize Browser Window

    Capture Page Screenshot

缩放

Chrome 的可能解决方法可能是调用此命令 仅适用于Chrome和IE。

Execute javascript  document.body.style.zoom="30%"

更多阅读:

Selenium2Library:Capture Page Screenshot

* Selenium 1 vs. Selenium 2

答案 1 :(得分:0)

我的回答将帮助您了解如何以不同尺寸以及不同的屏幕位置打开浏览器窗口。

driver = webdriver.Firefox()

将窗口大小调整为屏幕宽度/高度

driver.set_window_size(300, 500)

将窗口移动到x / y位置

driver.set_window_position(200, 200)

您可以根据项目要求更改屏幕坐标。 正如您在问题中提到的那样,您希望在应用程序中发生错误后进行屏幕截图。 因此,实现此目的的最佳方法是使用try catch异常

一旦try block在catch中失败,您可以根据需要设置窗口的大小并获得屏幕截图。

答案 2 :(得分:-2)

driver.manage()窗口()最大化();