mochaでnode.jsの単体テストを行い、Webソケット接続とクライアント上での解析をテストしています。私の問題は、Webソケットサーバーと通信するためにクライアントWebページを開いておく必要があることです。 node.js内でシミュレートする方法はありますか?WebソケットサーバーのユニットテストにはブラウザでWebページが開かれている必要があります
次のように私のユニットテストが動作:
1)ウェブソケットが起動し、接続するクライアントを待ちます。
2)特定のURL(現在はテスト中のURLに設定されたWebブラウザを使用していない)でクライアントを開きます。クライアントはWebソケットに接続し、利用できない場合は何度も試行します。
3)クライアントがWebソケットに接続すると、jsonをクライアントのテストロジックに送ります。
4)クライアントはウェブソケットで検証されたjsonを返信し、ウェブソケットが適切な応答を受け取るとテストに合格します。
現在、テストURLにブラウザを開く必要があることを除いて、すべてがうまくいきます。私はブラウザを開かずにテストを実行できるようにしたいと思います。
スタブまたはモックすることはできますか? [this](https://stackoverflow.com/questions/23151954/stubbing-websocket-in-javascript-with-jasmine)は助けますか?[this](https://github.com/thoov/mock-socket) )? – Adam
私はクライアントを模擬するための何かを探しています。私は質問を更新しました。 –
多分[this](http://liamkaufman.com/blog/2012/01/28/testing-socketio-with-mocha-should-and-socketio-client/)は役に立ちますか? – Adam