robot framework:在RF中自定义chrome启动参数(二)

597 篇文章 17 订阅
100 篇文章 2 订阅

(一)在RF中自定义chrome启动参数

这里主要是实现下面2个功能

1、禁用chrome正受自动测试软件控制的提示

2、设置默认的下载路径(一些导出、下载类的功能,将文件下载到指定路径下)

自定义一个关键字

from selenium.webdriver.chrome.options import Options

class  MyKeyword():

    def  get_chrome_options(self,downloads_path):
        '''
        自定义chrome启动参数
        :param downloads_path: 设置默认的文件下载路径
        :return:
        '''
        chrome_options = Options()
        prefs = {
            "download.default_directory":str(downloads_path),
        }
        chrome_options.add_experimental_option('prefs',prefs) #设置默认的文件下载路径
        chrome_options.add_argument('disable-infobars')     #chrome76以下禁用chrome受自动软件控制
        #下面2行chrome76及以上禁用chrome受自动软件控制
        chrome_options.add_experimental_option("useAutomationExtension", False)
        chrome_options.add_experimental_option("excludeSwitches", ["enable-automation"])
        return chrome_options

在RF的登录中引用这个自定义的关键字,执行的时候如果提示找不到关键字GET CHROME OPTIONS,加一个环境变量PYTHONPATH, value就是python project的路径。

*** Settings ***
Library                     SeleniumLibrary
Library                     mykeyword.mykeyword.MyKeyword
Suite Teardown              CLOSE BROWSER

*** Variables ***
${browser}            Chrome
${login_url}          https://account.cnblogs.com/signin


*** Test Cases ***
登录-XXXXXX
    登录-打开浏览器并进入登录页面


*** Keywords ***
登录-打开浏览器并进入登录页面
    ${options}=  GET CHROME OPTIONS  D:/projectname/testdata/downloads
    CREATE WEBDRIVER  ${browser}  chrome_options=${options}
    GO TO  ${login_url}
    SET SELENIUM IMPLICIT WAIT  10
    MAXIMIZE BROWSER WINDOW

整体的目录结构如下:
在这里插入图片描述
(二)如果要在实际项目中使用selenium grid

如果要在实际项目中使用selenium gird,可以在上面的基础上稍微修改下。这里必须在继承SeleniumLibrary库的基础上进行修改,我再下篇说明吧。

(三)python 的pythonpath

最后简单说明下,python有个搜索路径的概念,如果提示no keyword,而你又确实写了这个关键字,那么可能是库不在python的搜索路径里面。

通过 import sys sys,path 可以看到自己的搜索路径有哪些。

没有的话就新建一个环境变量,名称:PYTHONPATH 值:工程的路径。 环境变量加好后,重启下IDE就行了。

点赞关注~持续分享,加入我们,642830685,免费领取最新软件测试大厂面试资料和Python自动化、接口、框架搭建学习资料!技术大牛解惑答疑,同行一起交流。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值