3

問題を再現するためのセットアップと情報

  • Symfony2.2 アプリケーション
  • LiipFunctionalTestBundle
  • DoctrineFixturesバンドル
  • FOSUserBundle

環境をテストするために、LiipFunctionalTestBundle を使用して (DoctrineFixtures から) 偽の SQLite データベースを生成します。正しく構成されています。保護されていないページを正常にテストできました。

/secured/testこのビューの下に、簡単な保護されたページを作成しました。

<h2 class="username">{{ app.user.username }}</h2>
  1. 私は試してみました

そして、このアクションを次のアサーションでテストしたいと思いました。

$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.

  1. 私は試してみました

そして、このアクションを次のアサーションでテストしたいと思いました。

$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.

これらの作品のどれも。どうしたの?

他の方法も色々試しましたが、

4

1 に答える 1