robot framework使用SeleniumLibrary打开谷歌浏览器无头模式
- 2021 年 9 月 30 日
- 筆記
- Robot Framework
注:我百度了一圈并没有发现类似的教程
robot framework的seleniumLibrary一般打开浏览器的方式是用关键字
Open Browser
但是,阅读seleniumLibrary的源码后发现,并没有一个参数可以让我们指定无头模式,所以Open Browser做不到,除非修改源码。
这个时候,通过文档,找到了官方对于有需要传参数的需求,提供了一个关键字
Create Webdriver
我们可以自己创建一个Webdriver对象,既然是自己创建,那自然就可以跟selenium一样指定配置参数。
但是当我根据官方介绍的方式来创建对象时,却发现这种传参方式没有效果。
我们使用selenium打开无头模式时,需要创建一个Options对象,然后给add_argument函数赋值才可以做到。
当我学习官方介绍的传参方式时,发现根本不起作用,虽然没有报错,但是浏览器依旧是打开了。
后面想了想
${proxy.add_argument} Set Variable –headless
这一段,Set Variable 是赋值,所以是达不到传参的效果的,结果就变成了
proxy.add_argument=”headless”
最后将Options.add_argument函数变成了一个字符串变量。。。
那把这样的参数传进去,自然就开不了无头模式。
所以,我们得换一个方式传参,就用到了
Call Method
Call Method 是robot 自带的关键字,就是专门用来传参的。
我们将语句更改为
Call Method ${Options} add_argument --headless
于是乎,你会发现,虽然没有打开浏览器,但是测试用例显示已经执行完毕。