使用量角器如何设置Internet Explorer配置?

Pin*_*aas 10 windows internet-explorer angularjs protractor

我正在使用量角器1.3.1并运行安装了IE11的iedriverserver.exe 2.43.0.0(windows).这是我的规格:

describe('quick test IE driver', function () {
    it('should go to ng homepage', function () {
        browser.driver.get('https://angularjs.org/');
        var title =element(by.css('h1')).getText();
        expect(title).toBe('HTML enhanced for web apps!');
    });
});
Run Code Online (Sandbox Code Playgroud)

这是我的protractor.conf.js:

exports.config = {
    // The address of a running selenium server.
    //seleniumAddress: 'http://localhost:4444/wd/hub',

    capabilities: {
        'browserName': 'internet explorer',
        'platform': 'ANY',
        'version': '11'
    },


    // Spec patterns are relative to the current working directly when
    // protractor is called.
    specs: ['main.spec.js'],

    // Options to be passed to Jasmine-node.
    jasmineNodeOpts: {
        showColors: true,
        defaultTimeoutInterval: 30000,
        isVerbose:true,
        includeStackTrace:true

    }
};
Run Code Online (Sandbox Code Playgroud)

但是,获得此错误,任何解决方案的想法:

UnknownError: The path to the driver executable must be set by the webdriver.ie.driver system property; 
Run Code Online (Sandbox Code Playgroud)

Inn*_*ion 13

更新IE的Web管理器

第一步是使用webdriver manager更新ie webdriver.打开命令提示符并运行下面给出的命令

webdriver-manager update --ie
Run Code Online (Sandbox Code Playgroud)

转到npm位置在此步骤中,转到NPM_LOCATION(系统中安装了npm的文件夹.移动到以下路径"NPM_LOCATION \node_modules\protractor\selenium"在此位置检查是否存在IEDriverServer.exe.

在conf.js中更改IE

// conf.js exports.config = {   seleniumAddress: 'http://localhost:4444/wd/hub',   specs: ['specs.js'],   capabilities: {
    'browserName': 'internet explorer' // conf for internet explorer     } }


// spec.js describe('Protractor Demo App', function() {   it('should have a title', function() {
    browser.get('http://juliemr.github.io/protractor-demo/');
    expect(browser.getTitle()).toEqual('Super Calculator');   }); });
Run Code Online (Sandbox Code Playgroud)

现在运行量角器conf.js

注意:确保通过 - > webdriver-manager start重新启动服务器

取自:http://protractorsupport.blogspot.com/2015/05/use-protractor-with-internet-explorer.html


Rul*_*luk 7

根据量角器配置文档,不推荐使用配置值"seleniumArgs".

因此,要获得所有信息的单一答案,以下是简化步骤:

  1. 全局安装Protactor:

    npm install -g protractor
    
    Run Code Online (Sandbox Code Playgroud)
  2. 运行webdriver-manager update --ie以更新Protactor使用的Selenium驱动程序.请注意您是在运行全局 webdriver-manager还是本地 webdriver-manager(即./node_modules./bin/webdriver-manager update help); 他们会在不同的位置解压司机; 只有当地人会解压缩[Project dir]

  3. 看一下上一个命令的日志.它必须显示驱动程序在特定文件夹中解压缩.转到该文件夹​​并找到IEDriverServer.在我的情况下它是:"[Project dir]\node_modules\protractor\node_modules\webdriver-manager\selenium\IEDriverServer_x64_X.XX.X.exe.您需要在下一步中提供此文件的相对路径.

  4. conf.js文件中,添加以下键和值.使用注意事项localSeleniumStandaloneOpts,这意味着你要删除的属性seleniumAddress,如果您有它:

    multiCapabilities : [
      {
        'browserName' : 'chrome'
      }, {
        'browserName' : 'internet explorer'
      }
    ],
    
    localSeleniumStandaloneOpts : {
      jvmArgs : ["-Dwebdriver.ie.driver=<RELATIVE PATH TO IE DRIVER>"] // e.g: "node_modules/protractor/node_modules/webdriver-manager/selenium/IEDriverServer_x64_X.XX.X.exe"
    },
    
    Run Code Online (Sandbox Code Playgroud)

这就是我需要做的一切.我事先没有启动服务器,我只是运行protactor conf.js.我想现在更容易了.


Sak*_*gla 4

下载 IEDriverServer.exe 请在您的配置文件中指定相同的内容

seleniumArgs: ['-Dwebdriver.ie.driver=<path to IEDriverServer.exe>']
Run Code Online (Sandbox Code Playgroud)