"webdriver-manager start"是必要的吗?

Hou*_*sni 5 selenium angularjs webdriver-manager

我正在钻研AngularJS的量角器测试世界.

所有教程都建议我webdriver-manager update在执行测试之后和执行之前执行以下操作: webdriver-manager start

据该webdriver-manager男子称,该start命令将"启动selenium服务器".是的,一旦我运行上面的命令,我可以在http://127.0.0.1:4444/wd/hub看到一些东西

我的问题是:上面有必要吗?

我目前在没有上述命令的情况下运行测试.

我所做的就是: webdriver-manager update php -S localhost:8000 -t dist/ protractor ./test/protractor.config.js

即使我已经排除了,我的测试也按预期运行webdriver-manager start.

有人可以解释为什么webdriver-manager start有必要吗?

:编辑:

我的量角器/ fooTests.js:

exports.config = {
    directConnect: true,
    capabilities: {
        'browserName': 'chrome'
    },
    specs: ['protractor/fooTests.js'],
    jasmineNodeOpts: {
        showColors: true,
        defaultTimeoutInterval: 30000
    }
};
Run Code Online (Sandbox Code Playgroud)

我的量角器/ fooTests.js:

describe('test for the bar code', function() {
    it('should login', function() {
        browser.get('http://localhost:8000');

        element(by.model('password')).sendKeys('123456');
        element(by.css('[type="submit"]')).click();
    });
    it('should inspect element ', function() {
        expect(element(by.id('foo-script')).isPresent()).toBe(true);
        console.log('Login Success');
    });
});
Run Code Online (Sandbox Code Playgroud)

Sul*_*han 3

Protractor 向 Selenium 发送命令,Selenium 使用其驱动程序与浏览器进行通信。

webdriver-manager start
Run Code Online (Sandbox Code Playgroud)

正在启动硒。

有 3 个基本选项:

  1. directConnect。这使得 Protractor 直接与 selenium 驱动程序通信,而无需使用 Selenium 服务器。然而,该选项的功能是有限的:

directConnect: true - 您的测试脚本直接与 Chrome 驱动程序或 Firefox 驱动程序通信,绕过任何 Selenium 服务器。如果这是 true,seleniumAddress 和 seleniumServerJar 的设置将被忽略。如果您尝试使用 Chrome 或 Firefox 以外的浏览器,将会抛出错误。

  1. 连接到已运行的 selenium 服务器(本地或远程),由 指定seleniumAddress。可以使用该脚本启动服务器webdriver-manager start

  2. 从测试脚本启动服务器。

您可以探索文档中的所有选项https://github.com/angular/protractor/blob/master/docs/server-setup.md