2016-09-07 7 views
1

のためのテストケースを整理私は分度器に新しいです。私は開発環境のための私のテストケースを作成し、それは正常に動作します。今では、制作と品質保証のテストケースを移動しなければなりません。 3環境でのコード以来3環境

は、私はすべての3環境の重複コードを作成する必要はありません同じです。要するに

私は開発のための私のコードを実行した場合、私は生産のため

protractor conf.js -dev 

を行う必要があります

protractor conf.js -production. 

-devおよび作製 - は、それぞれのURLです。 誰も私がそれを達成する方法を教えてもらえますか? 3つの環境に対して3つのconf.jsファイルを作成する必要がありますか?

答えて

1

は、コマンドラインオプションとしてそれを渡します。コマンドライン引数を使用して

protractor --baseUrl='http://www.productionUrl.com' conf.js

また、あなたの設定ファイルを持っているすべての設定を上書きします。したがって、設定ファイルの設定がbaseUrl='http://www.test.com'の場合、設定ファイルではなくコマンドラインで渡されたURLが使用されます。

それは私自身が、いくつかの設定ファイル(異なるブラウザ、環境など)を持っている、しかし個人的な好みです。私は同じ設定を95%使っていますが、しばらくの間、毎回特定のブラウザ/環境/何にでもすばやくアクセスできるように他のものを持っていることがうれしいです。プラス私はできるだけ多く入力する必要はありません:)

+0

こんにちはGunderson、私は問題だURL全体:( – Jatin

+0

を入力するには、ユーザーがそれからちょうど別の設定ファイルを作成したくありません。 '分度器prod.conf.js'、'分度器test.conf.js'など、同じ使用Angular2 CLIコマンド 'NG e2e'を達成するためにどのように – Gunderson

2

ベストの方法は、コマンドプロンプトから分度器を実行している間だけの環境タイプ(QA、DEV、PROD)を送信し、で、実行する前に、あなたはconfの上のparamsセクションを追加する必要があります以下に示すように.jsファイル:

conf.js 1オン:

params: { 
     environment:null 
    } 

コマンドプロンプトから2パス環境値

protractor --params.environment='QA' conf.js 

環境値に基づいて、内部のbaseUrlにパラメータにURLを割り当てることができます。

onPrepare:function(){ 
    if(browser.params.environement=QA){ 
     browser.baseUrl="QA URL" 
    } 
    else{ 
     browser.baseUrl="PROD URL" 
    } 
}; 
+0

?それはparamsを 'ng e2e'に渡しています。 –