Plack::Middlewareの中で $env->{'psgix.hoge'} 的な何かを突っ込むことはあるん じゃないかと思うが、そのテストをどう書くかという話。 Plack::Testだとレスポンスは見られるが、$envはもう見られない。 結論を言ってしまうと、$envをシリアライズして、response bodyに突っ込んでしまう $appを作るのが乱暴かつお手軽かと思う。 以下サンプルコード。 package Plack::Middleware::Hoge; use strict; use warnings; use parent 'Plack::Middleware'; sub call { my ($self, $env) = @_; $env->{'psgix.hoge'} = 'fuga'; $self->app->($env); } このMiddlewareをテストす