# QA用にサーバを不安定にする Plack::Middleware 書いた {{tag: perl, plack, development}} スマホクライアントのテストにおいて、サーバサイドでエラーが起きたときの挙動を確認する場合、サーバサイドでエラーを生み出すのに逐一設定をいじるのが面倒くさい。そこで、よしなに振る舞ってくれる {{cpan: Plack::Middleware::Devel::ForceResponse}} を書いた。QA 段階でこいつを投入してモンキーテストしてもらえば良い。 ## Plack::Middleware::Devel::ForceResponse こんな感じで builder { enable 'Devel::ForceResponse', rate => 50, response => [400, 500, 503] ; sub { [ 200, ['Content-Type' => 'text/plain'], ['OK'] ] }; }; 50% の割合で HTTP status 400 or 500 or 503 のどれかを返す。 ちなみに、rate を 100以上に設定すると常に response のどれかを返す。 壊れかけのサーバが欲しいときに、どうぞ。