ストーリー:multiCapabilitiesとジャスミン集中テスト
我々はむしろ巨大なエンドツーエンドの分度器のテストコードベースを持っています。 ChromeとFirefoxでdirectConnect
を使用してテストを実行する2つの設定があります。もう1つは遠隔セレンサーバ - ここではBrowserStackでテストを実行するための "リモート"です。
Chromeでいくつかのテストを実行するように設定されています(実際には、keyboard shortcuts don't work in Chrome+Macなど)。リンクされたchromedriver
の問題が解決されるまで、Firefoxでキーボードショートカットを使用する必要があるテストを実行することは回避策です。ここで
var firefox_only_specs = [
"../specs/some_spec1.js",
"../specs/some_spec2.js",
"../specs/some_spec3.js"
];
exports.config = {
directConnect: true,
multiCapabilities: [
{
browserName: "chrome",
chromeOptions: {
args: ["incognito", "disable-extensions", "start-maximized"]
},
specs: [
"../specs/**/*.spec.js",
"../specs/**/**/*.spec.js",
"../specs/**/**/**/*.spec.js"
],
exclude: firefox_only_specs
},
{
browserName: "firefox",
specs: firefox_only_specs
}
],
// ...
};
問題:
さて、問題は、私は、単一のテストをデバッグしていた場合、実行したいか、ということです(fdescribe
/fit
を介して)集中しているとマークしていますが、分度器は2つのドライバセッションを開始します.1つはChrome用、もう1つはFirefox用で、両方の設定機能を使用します。
Running "protractor:local" (protractor) task
[launcher] Running 2 instances of WebDriver
...
------------------------------------
[chrome #1] PID: 2329
[chrome #1] Using ChromeDriver directly...
[chrome #1] Spec started
...
------------------------------------
[firefox #2] PID: 2330
[firefox #2] Using FirefoxDriver directly...
[firefox #2] Spec started
...
質問:
がフォーカスされた仕様が設定した唯一の機能を使用するには、分度器を伝える方法はありますか?
現在使用中の最新protractor
3.0.0。
質問が明確であることを願っています。追加情報が必要な場合はお知らせください。
あなたの質問には答えがありませんが、私にはそうは思われません...あなたはできません。テストが実行される前にconfigが読み込まれ、 'multiCapabilities'のすべてのブラウザが起動します。苦しい回避策は、「ランナー」または実行スクリプトを異なる設定に変更するか、コマンドラインパラメータに基づいて設定を動的に設定することです。すなわち、これは、ツール/フレームワークの組み込み機能を使用していないが、あなたはChromeの設定を持たないdiff設定で実行することができます。 – aneroid
@aneroidこの点についてありがとうございます。そうですね、問題にアプローチする方法は明確ではありません。値に応じて、機能の1つまたはすべてを実行するカスタムのコマンドラインパラメータを個別に設定する必要があるかもしれません。 – alecxe
必要であれば、 'protractor.conf.js'に' getMultiCapabilities'関数を使って動的に能力を生成することができます。 – martin770