web-dev-qa-db-ja.com

分度器でInternet Explorerの設定をセットアップする方法

分度器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!');
    });
});

そして、これは私の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

    }
};

しかし、このエラーが発生する、解決策のアイデア:

UnknownError: The path to the driver executable must be set by the webdriver.ie.driver system property; 
10
Pindakaas

IEのWebマネージャーを更新する

最初のステップは、Webドライバーマネージャーを使用してIE Webドライバーを更新することです。コマンドプロンプトを開き、以下のコマンドを実行します

webdriver-manager update --ie

Npmの場所に移動この手順では、NPM_LOCATION(npmがシステムにインストールされているフォルダーに移動します。次のパスに移動します。 "NPM_LOCATION\node_modules\protractor\Selenium"この場所で、IEDriverServer.exeが存在するかどうかを確認します。

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');   }); });

次に、分度器conf.jsを実行します。

注:-> webdriver-manager startでサーバーを再起動してください。

取得元: http://protractorsupport.blogspot.com/2015/05/use-protractor-with-internet-Explorer.html

13
Innovation

分度器構成ドキュメント によると、構成値"seleniumArgs"は非推奨です

したがって、すべての情報を含む単一の回答を得るために、簡略化された手順を次に示します。

  1. Protactorをグローバルにインストールします。

    npm install -g protractor
    
  2. webdriver-manager update --ie を実行して、Protactorが使用するSeleniumドライバーを更新します。 globalwebdriver-managerまたはlocalwebdriver-manager(つまり./node_modules./bin/webdriver-manager update help);ドライバーを別の場所に解凍します。 localのみが[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"
    },
    

それが私がする必要があるすべてでした。サーバーを事前に起動するのではなく、単にprotactor conf.jsを実行します。今はもっと簡単だと思います。

7
Ruluk

IEDriverServer.exeをダウンロードします構成ファイルで同じものを指定してください

seleniumArgs: ['-Dwebdriver.ie.driver=<path to IEDriverServer.exe>']
4
Sakshi Singla

私はこの質問を数時間探していましたが、最善の方法は次のようです:

1)webdriver-manager --ie updateをダウンロードします

これにより、google .. Selenium ... releaseフォルダーからドライバーがダウンロードされ、npmローカルリポジトリの適切な場所に直接配置されます。

2)テストのconfig.jsファイルでの設定:...

multiCapabilities: [
    //{
    //    browserName: 'chrome',
    //    version: 'ANY'
    //},
    //{
    //    browserName: 'firefox',
    //    version: 'ANY'
    //},
    {
        browserName: 'internet Explorer',
        version: 'ANY'
    },
],
// For some IE functions you may need to specify defaultTimeoutInterval

... 3)IEのセットアップ:

この投稿をフォロー http://jimevansmusic.blogspot.fr/2012/08/youre-doing-it-wrong-protected-mode-and.html

PS:IEの「保護モード」設定については、すべてのゾーンに同じ設定をすることが重要です。すべてのゾーンで保護モードを「オン」にすることを好みます

4)レジストリにパッチを適用する

ここで説明するように: http://heliumhq.com/docs/internet_Explorer

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\MAIN\FeatureControl\FEATURE_BFCACHE] "iexplore.exe" = dword:00000000

5)IE 11 updateは、システムの動作を中断します。

私の最新の問題は「サーバーがスタックトレースを提供しなかった...」でした。これは、2014年12月17日の更新によるものです。アンインストールすれば問題ありません。

https://code.google.com/p/Selenium/issues/detail?id=339

それを実行させるためのクレイジーなパス。長い目で見ればこのようなことはできません。私の投稿にあなたの経験やフィードバックをコメントしてください。

リチャード

3
rlasjunies

これが私の設定ファイルです:

exports.config = {

seleniumAddress: 'http://127.0.0.1:4444/wd/hub',
capabilities: {
'browserName': 'internet Explorer',
 },

framework: 'jasmine',

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

};

IEで実行する手順:

  1. Visual Studio Codeに2つのターミナルが必要です。最初のターミナルで、コマンド「webdriver-manager start」を実行してSeleniumサーバーを起動します。
  2. 2番目のターミナルで、js構成ファイルを次のように実行します。Protractor conffile_name.js

これでInternet Explorerが正常に起動します。ありがとう

0
Stan