2016-12-14 19 views
0

を構築...必須テストの成功これはばかげた質問かもしれませんが、私はこれまでウェブ上でそれに答えるために、関連する何かを見つけることができませんでした

Iはイオン/コルドバに取り組んでいますモバイルアプリケーションと私はいくつかの自動テストを設定したいと思います。 私はJavaの世界から来て、私はMavenでテストを設定するように設定したいと思います。アプリケーションをビルドしようとすると(ionic/cordova build android/ios)、このコマンドは自動的にテストを起動し、テストが正常に終了しなかった場合、ビルドは停止してパッケージを生成しなくてはなりません。

私はウェブ上にたくさんのものを見つけましたが、テストはノンブロッキングか、手動で実行するか、どちらにも合っていないようです。

Apple AppStoreで公開するには、手動でXCodeの微調整を手動でチェックする必要があります。リリースビルドは常に手動で行われる傾向があり、テストを実行せずにビルドできないようにします。

これを行うには良い方法はありますか?

PS:Cordova before_buildフックを使用しようとしましたが、コンソールがないMicrosoft JScriptで実行されているように見えますが、見つからないエラーが発生してもビルドは停止しません。良いオプションのように。

ありがとうございました!

SJ

+0

おそらく、これを行うにはビルドツールを変更し、Cordova/Ionic CLIを使用しないことです。 私はこれをコードレスのビルドをgrunt/gulpから開始することは可能だと思いますが、イオンコマンドについても可能ですか? – sjahan

答えて

0

私はコルドバbefore_buildフックを使用しようとしましたが、何のコンソールを持っていないとuncatchedエラーが発生した場合、それはbuild`

を停止しないMicrosoftのJScript、で実行しているように見えます

コルドバのフックスクリプトは、あなたがこのような何か行うことができますので、ビルドを停止しますNodeJSを使用して実行し、ゼロ以外のエラーコードで終了:

project_dir /フック/ before_build/run_maven_tests.js

#!/usr/bin/env node 
'use strict'; 

var exec = require('child_process').exec; 
var cliCommand = "mvn surefire:test"; 

exec(cliCommand, function(err, stdout, stderr) { 
    if(err){ 
     console.error("Tests failed - aborting build"); 
     process.exit(1); 
    } 
    console.log("Tests passed"): 
};    
関連する問題