2017-04-12 6 views
0

接続方法分度器テスト後にフックを送るためにスラックを使用したjsテスト?テストの後に引っ掛けを送信するために分度器jsテストをスラックに接続するにはどうすればいいですか?

+0

npmの 'slack-node'モジュールを使用してください。 https://www.npmjs.com/package/slack-nodeを参照してください。 –

+0

@SudharsanSelvaraj:Slackとは何ですか? –

+0

テストファイルがどのように見えるかの簡単な例がありますか? – Losmi

答えて

1

投射器がSlack webhookに当たった1つの方法は、onComplete block in your configを使用することです。ここでスラックするリクエストを送信するためにrequest-promiseを使用する例を示します。

// ... 
onComplete: function() { 
    var rp = require('request-promise'); 

    var options = { 
     uri : 'https://hooks.slack.com/services/YOUR_SLACK_WEBHOOK', 
     method: 'POST', 
     body: { 
      'attachments': [{ 
       'title': 'E2E Test Results' 
      }] 

     }, 
     channel: '#YOUR_SLACK_CHANNEL', 
     username: 'TestBot', 
     mrkdwn: true, 
     json: true 
    }; 

    // send to slack... 
    return rp(options) 
     .then(function(res) { 
      console.log(res); 
     }) 
     .catch(function(err) { 
      console.log(err); 
     }); 
}, 

URIをウェブフックあなたのスラックを追加し、あなたの分度器の設定にをブロックを追加し、request-promiseをインストールし、名チャネル、および設定を使用してテストを実行します。あなたはそれをあなたの好みに合わせてtweekするためにいくつかの宿題をする必要がありますが、それはジストです。

+0

私のコードを見てください – Losmi

+0

あなたは自分自身の余裕を持ってwebhookとchannelを追加する必要があります... – Brine

-2
let SpecReporter = require('jasmine-spec-reporter').SpecReporter; 

exports.config = { 
    seleniumAddress: 'http://localhost:4444/wd/hub', 
    specs: [ 
    'spec.js' 
    ], 
    onPrepare: function() { 
    jasmine.getEnv().addReporter(new SpecReporter({ 
     spec: { 
     displayStacktrace: true 
     } 
    })); 
    }, 

    onComplete: function() { 
    var rp = require('request-promise'); 

    var options = { 
     uri : 'https://hooks.slack.com/services/YOUR_SLACK_WEBHOOK', 
     method: 'POST', 
     body: { 
      'attachments': [{ 
       'title': 'E2E Test Results' 
      }] 

     }, 
     channel: '#YOUR_SLACK_CHANNEL', 
     username: 'TestBot', 
     mrkdwn: true, 
     json: true 
    }; 

    // send to slack... 
    rp(options) 
     .then(function(res) { 
      console.log(res); 
     }) 
     .catch(function(err) { 
      console.log(err); 
     }); 
} 
}; 
関連する問題