最小化浏览器机器人框架关键字
Posted
技术标签:
【中文标题】最小化浏览器机器人框架关键字【英文标题】:Minimize browser Robot Framework keyword 【发布时间】:2015-07-31 18:50:54 【问题描述】:我已经安装了 Robot Framework 并创建了一些测试用例。我使用关键字最大化浏览器窗口来最大化浏览器,但现在我需要最小化浏览器。我看到官方文档但我没有找到特定的关键字,现在我正在使用:
Set Window Size $0 $0
但这不是我想要的。我想最小化或在后台运行测试。有人知道怎么做吗?
提前致谢。
【问题讨论】:
您能否详细说明“最小化或在后台运行测试”?我不确定你想达到什么目的。 我希望在测试运行时浏览器不可见 【参考方案1】:很好的问题,我的公司确实做到了这一点,但不是你想的那样。
简而言之,在普通的 Robot Framework 中这可能是不可能的,但我们设置了一个持久的 Linux VM 并在其上安装了 Jenkins 和 Robot Framework。然后将其连接到 GitHub 存储库,在该存储库中上传构建并设置为在每次推送时运行新测试。
但是,如果您想深入了解特定浏览器的内部结构,我找到了一种方法来保证 Chrome 由 Robot Framework 最大化启动,因此可以做同样的事情,但反过来。假设您的关键字都不依赖 xy 坐标,那应该没问题。当它控制的浏览器被最小化时,Robot Framework 工作得很好。
这是我开始做的代码。
Open Chrome
[Arguments] $HOMEPAGE
$options Evaluate sys.modules['selenium.webdriver'].ChromeOptions() sys
Call Method $options add_argument --start-maximized
Create WebDriver Chrome chrome_options=$options
Go To $HOMEPAGE
编辑:在与高级开发人员进一步讨论后,答案是否定的。这是不可能的,因为 Selenium 需要一个可用的元素来与之交互。它可能不一定是肉眼可见的,但它需要对程序可用,而当浏览器窗口最小化时,情况并非如此。当我将上面的代码更改为“--start-minimized”时,它以最小化方式打开,然后立即可见地运行。
【讨论】:
以上是关于最小化浏览器机器人框架关键字的主要内容,如果未能解决你的问题,请参考以下文章
Robotframework:找不到名称为“打开浏览器”的关键字