symfonyのロールアクセスでphpunitを使ってどのようにテストするか自分に尋ねています。 たとえば、セキュリティ設定でindexActionと5つの異なる役割がある場合、ユーザーAが401、ユーザーBが403、ユーザーCが500となることを確認したい場合...symfonyのコントローラへのアクセスをテストする
問題:実際にテストを実行するには時間がかかります。これは、5つの機能テストを実行するためです。
今、私はそういうことをやっている:
/**
* @covers \App\Bundle\FrontBundle\Controller\DefaultController::indexAction()
*
* @dataProvider rolesAllAccess
*
* @param string $user
* @param integer $expectedCode
*
* @return void
*/
public function testRolesIndexAction($user, $expectedCode)
{
$client = $this->createClientWith($user);
$client->request('GET', '/');
$this->assertEquals($expectedCode, $client->getResponse()->getStatusCode());
}
機能createClientWithは私が前に私のdataProviderの中で定義されているクライアントを認証します。それはまさに私が前に説明したものです。
あなたはそれをどうやってやっているのか、あるいは少なくとももっと良いパフォーマンスで何かを知っていますか?
ありがとうございます!
可能性がありますが、非同期テストを実行することができる/並行して、全体の実行時間をスピードアップします。 – nifr