2016-07-06 3 views

答えて

0

、あなたのサーバーをテストしている自動化された展開のためのジェンキンスを使用していますか?

もしそうなら、あなたはこのような機能後とを使用して、サーバーのライフサイクルを扱う必要があります。

var server = require('../my/lib/server'); 

describe('My server test suite', function() { 
    before(function() { 
    server.listen(8080); 
    }); 

    it('should do my test', function(done){ 
    //my test 
    }); 

    after(function() { 
    server.close(); 
    }); 
}); 

例えば、NPMのpackage.jsonからこのテスト作業であなたのモカの実行を置き:

"scripts": { 
    "test": "node ./node_modules/.bin/mocha --globals '*'" 
} 

npm install && npm testサーバーテストで実行できます実行シェルのビルドステップを実行します。 (:をサーバー配備EX)

  • は別のジョブを作成します。

    は、その後、あなたが必要があることをテストしたバージョンを展開する場合。

  • server-test他のプロジェクトのビルドをポストビルドステップとしてトリガー/コールするジョブの中にParametrized Trigger pluginをインストールして使用してください。
  • ジェンキンスジョブは次のように完了した後で実行中のプロセスを維持するために永遠+ dontKillMeフラグを使用して、プロジェクトにサーバー展開仕事に
  • forever NPMモジュールを追加します:

BUILD_ID=dontKillMe forever start myserver.js

PS:BUILD_ID = dontKillmeを使用するための説明はhereです。

+0

prestartをpackage.jsonで使用するだけではありませんか?どのようにこれがより良いのかについて本当に興味がありますか? – willyb321

関連する問題