测试基础 解决 “chrome 正受到自动测试软件的控制” 的提示

大海 · 2020年09月03日 · 最后由 大海 回复于 2020年09月04日 · 5767 次阅读

chromeOptions 是一个配置 chrome 启动是属性的类。通过这个类,我们可以为 chrome 配置如下参数(这个部分可以通过 selenium 源码看到):

  • 设置 chrome 二进制文件位置 (binary_location)
  • 添加启动参数 (add_argument)
  • 添加扩展应用 (add_extension, add_encoded_extension)
  • 添加实验性质的设置参数 (add_experimental_option)
  • 设置调试器地址 (debugger_address)
配置参数
chrome_options.add_experimental_option("excludeSwitches", ['enable-automation'])
原理分析

class Options(object):
    KEY = "goog:chromeOptions"

    def __init__(self):
        self._binary_location = ''
        self._arguments = []
        self._extension_files = []
        self._extensions = []
        self._experimental_options = {}
        self._debugger_address = None
        self._caps = DesiredCapabilities.CHROME.copy()


    def add_experimental_option(self, name, value):
        """
        Adds an experimental option which is passed to chrome.

        Args:
          name: The experimental option name.
          value: The option value.
        """
        self._experimental_options[name] = value
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
共收到 2 条回复 时间 点赞

这个开关除了不提示正在受到自动测试软件的控制外,还有什么别的影响吗?

陈恒捷 回复

我查了一下,这个就是让你以开发者的模式启动浏览器,设置开发者模式启动,该模式下 webdriver 属性为正常值。

需要 登录 后方可回复, 如果你还没有账号请点击这里 注册