2006-07-03 (Mon) [長年日記]

_ UnitTest 用 HTTP Server はてなブックマークに追加 del.icio.usに追加 MM/Memoに追加

先日の日記に書いたメール送信の ユニットテストみたいなことを、HTTP Server に対しても 行いたくなった。

例えば、「何かのアクションを行ったついでに、それを HTTP で どこかに通知」という機能をテストしたいときなど。 最近 Web Service とかも一般的になってきたし、blog の ping 機能 とかもそんな感じなので、割と使う場面はありますね。

で、そういうことができる HTTP Server がないか探したら、 commons-httpclient の中の test ディレクトリに SimpleHttpServer というクラスがひっそりとありました。

というわけで、src/test/org/apache/commons/httpclient/server 以下を jar にまとめて、あと EchoService ってクラスも使いたかったのですが、 どういうわけか現在のリポジトリには見当たらなかったので、 昔のブランチ(3.0辺り)からとりだしてきて同じく jar にまとめて利用。

test の書き方は、 src/test/org/apache/commons/httpclient/TestPostMethod.java 辺りが参考になるでしょう。

これもメールのテストときと同様、ファイアウォールとか Norton などに 注意です。

それから、Skype を使っていると、どういうわけか Skype が 80 番ポートを LISTEN しやがってて、80 番では SimpleHttpServer を立てられないので、 Skype を止めるとか設定を変えるとか、 80 番以外のポートを使うなどしないといけません。

Permalink | このエントリを含むはてなブックマーク | このエントリをはてなブックマークに追加 | このエントリを含むMM/Memo | このエントリをMM/Memoに追加 | このエントリを含むdel.icio.us | このエントリをdel.icio.usに追加 | Tags: java
[]