我已经安装了Robot Framework并创建了一些测试用例 . 我使用关键字最大化浏览器窗口来最大化浏览器,但现在我需要最小化浏览器 . 我看到官方文档,但我没有找到特定的关键字,现在我使用:
Set Window Size ${0} ${0}
但这不是我想要的 . 我想在后台最小化或运行测试 . 有谁知道怎么做 .
提前致谢 .
很棒的问题,我的公司实际上设法完成了这个,但不是你想的方式 .
简短的版本是在正常的Robot Framework中可能不可能,但我们 Build 了一个持久的Linux VM并在其上安装了Jenkins和Robot Framework . 然后将其连接到GitHub存储库,在该存储库中上载构建并设置为在每次推送时运行新测试 .
但是,如果你想进入你的特定浏览器的内部,我找到了一种方法来保证Chrome机器人框架最大化启动Chrome,所以它可能会做同样的事情,但相反 . 假设你的关键字都不依赖于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-minimize”时,它打开最小化然后立即明显地运行 .
1 回答
很棒的问题,我的公司实际上设法完成了这个,但不是你想的方式 .
简短的版本是在正常的Robot Framework中可能不可能,但我们 Build 了一个持久的Linux VM并在其上安装了Jenkins和Robot Framework . 然后将其连接到GitHub存储库,在该存储库中上载构建并设置为在每次推送时运行新测试 .
但是,如果你想进入你的特定浏览器的内部,我找到了一种方法来保证Chrome机器人框架最大化启动Chrome,所以它可能会做同样的事情,但相反 . 假设你的关键字都不依赖于xy坐标,那应该没问题 . Robot Framework在其控制的浏览器最小化时工作得很好 .
这是我开始做的代码 .
编辑:经过与高级开发人员的进一步讨论,答案是否定的 . 因为Selenium需要一个可用的元素来与之交互,所以不可能这样 . 它可能不一定是可见的,但它需要可用于程序,而当浏览器窗口最小化时则不是这样 . 当我将上面的代码更改为“--start-minimize”时,它打开最小化然后立即明显地运行 .