【问题标题】:Target browser must be a string... (selenium, protractor)目标浏览器必须是字符串...(硒,量角器)
【发布时间】:2017-02-27 23:02:53
【问题描述】:

我已经升级了我的环境以支持我对 firefox、chrome 等的测试。

我已经安装了:

Node LTS (6.10.0)
Selenium Server Standalone 3.1.0
protractor@5.1.1
npm@4.1.2

当我现在想运行我的测试时,我收到:

    [17:31:32] I/launcher - Running 1 instances of WebDriver
    [17:31:32] I/hosted - Using the selenium server at http://localhost:4444/wd/hub
    [17:31:32] E/launcher - Error: TypeError: Target browser must be a string, but is <undefined>; did you forget to call forBrowser()?
    [...]
    [17:31:32] E/launcher - Process exited with error code 100

    Process finished with exit code 100

这是什么意思?

config.js 是:

var TIMEOUT = 10000;
exports.config = {
    ...
    capabilities: [
        {
            'browserName': 'firefox', //tried as 'firefox', firefox and "firefox"
            //'marionette': true //tried true and false
        },
    ],
    ...
};

【问题讨论】:

  • 也许您正在使用多个capabilities 或另一个multiCapabilities
  • 不,我唯一拥有的部分是描述中的部分。或者还有其他地方可以配置吗?
  • 检查你是否没有在某处实例化WebDriver()

标签: selenium-webdriver protractor


【解决方案1】:

这既棘手又好笑:) 你知道吗.. browserName 没有问题。问题是您提供的功能对象不正确。您正在提供一个数组,而您需要发送 1 个功能对象

Remove '['  & ']'

capabilities: [{'browserName': 'firefox'},] - 这是不正确的。这意味着一个大小为 1 的数组,索引为 0,保存您的 firefox 配置

应该是这个——capabilities: {'browserName': 'firefox'}

【讨论】:

  • 你是个天才,AdityaReddy!现在至少我可以启动我的 chrome 了。但是当使用 Firefox 时,我得到:错误:错误:您可能无法将自定义命令执行器与旧版 FirefoxDriver 一起使用
  • @StefanieZachmann .. 很高兴它有效 .. 关于 firefox .. 我不太确定 Protractor 5.1.1 的最新更改,但看起来你现在需要单独的木偶驱动程序。 . 我建议关闭这个问题并提出一个单独的问题,这将得到一个准确的答案
  • @StefanieZachmann 您是否找到解决“您可能无法将自定义命令执行器与旧版 FirefoxDriver 一起使用”的解决方案?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2019-01-23
  • 2023-01-10
  • 1970-01-01
  • 2018-05-16
  • 2020-07-21
  • 1970-01-01
  • 2020-09-04
相关资源
最近更新 更多