問題を再現するためのセットアップと情報
- Symfony2.2 アプリケーション
- LiipFunctionalTestBundle
- DoctrineFixturesバンドル
- FOSUserBundle
環境をテストするために、LiipFunctionalTestBundle を使用して (DoctrineFixtures から) 偽の SQLite データベースを生成します。正しく構成されています。保護されていないページを正常にテストできました。
/secured/test
このビューの下に、簡単な保護されたページを作成しました。
<h2 class="username">{{ app.user.username }}</h2>
そして、このアクションを次のアサーションでテストしたいと思いました。
$client = static::createClient(array(), array(
'PHP_AUTH_USER' => 'myUserName'
'PHP_AUTH_PW' => 'password',
));
$crawler = $client->request('GET', '/secured/test');
$count = $crawler
->filter('h2.username:contains("myUserName")')
->count();
$this->assertTrue($count > 0);
結果はFailed asserting that false is true.
そして、このアクションを次のアサーションでテストしたいと思いました。
$this->logIn();
$crawler = $this->client->request('GET', '/secured/test');
$count = $crawler
->filter('h2.username:contains("myUserName")')
->count();
$this->assertTrue($count > 0);
もちろん、ログイン機能を別のユーザー名に変更しました。
結果はFailed asserting that false is true.
これらの作品のどれも。どうしたの?
他の方法も色々試しましたが、