2016-10-25 4 views
0

分岐(env.jsファイル)上のファイルを変更する必要がある分度器を使用して機能をQAします。私は 'GET'を 'POST'に変更してテストを実行する必要があります。テストが完了したら、これを「GET」に戻してください。別のディレクトリにファイルをコピーするAngularJS

==Path to file that needs to change > /app/scripts/env.js== 
window.__env.postMethod = 'GET'; 

私はenv.jsファイルを2つコピーできると考えていました。 1つは変更と元のファイルです。テストが実行されると、元のファイル(/app/scripts/env.js)を上書きしてenv.jsファイル(/test/pages/support/modified_env.js)をコピーします。テストが終了したら、元のファイルを元に戻します。 Angularjsとは別のディレクトリにファイルをコピーする方法がわかりません。提案?ファイルを変更せずにこれを 'GET'から 'POST'に変更する他のオプションはありますか?

==sudo code (sorry I only know linux copy commands)== 
cp /test/pages/support/modified_env.js /app/scripts/env.js 
//run my tests 
cp /test/pages/support/original_env.js /app/scripts/env.js 

このテストはCI(Jenkins and Github)でも実行されます。 CIテスト中にファイルをコピーすることが懸念されるでしょうか?

答えて

2

protractorはNode.js上で実行されます。つまり、JavaScriptでファイルのコピーを書き込む必要があります。

分度器configurationでは、onPrepare()onCleanUp()でテストを準備してクリーンアップする機能を提供することができます。これらの関数では、Node.jsのファイルシステムモジュールを使用してファイルをコピーできます。以下は例です。

var fs = require('fs'); 
fs.createReadStream('source-file').pipe(fs.createWriteStream('target-file')); 
+0

素晴らしいおかげでこのまたは任意の答えはあなたの質問を解決した場合、私は(http://meta.stackexchange.com/q/5234 [それを受け入れる]ご検討ください、 –

+0

こんにちは@DennisFergusonを試してみてください、これをあげます/ 179419)をクリックしてください。これは、あなたが解決策を見つけたことを広範なコミュニティに示し、回答者とあなた自身の両方にいくつかの評判を与えます。これを行う義務はありません。 –

関連する問題