0
PHPの関数テストについてもう少し知るために、私はSymfonyのPHPUnitでダミーテストを書いています。リダイレクトテストはリンクをクリックしても受け入れられません
ここに問題があります。
<a href="{{ path('redirect2') }}">Click me !</a>
そして、先のメッセージ:これは私のリンクです
//Redirecting test by clicking on href
public function testRedirect() {
$client = static::createClient();
$crawler = $client->request('GET', '/redirect');
$link = $crawler->selectLink('Click me !')->link();
$client->click($link);
$crawler2 = $client->followRedirect();
$this->assertTrue(
$client->getResponse()->isRedirect()
);
$this->assertTrue($crawler2->filter('html:contains("Haha, you\'ve been redirect !")')->count() > 0);
}
: これは私の試験方法である
Haha, you've been redirect !
私は
redirect2
があることを前提としていmの名前yルート。
テストは私を与える:
1) AppBundle\Tests\Controller\DefaultControllerTest::testRedirect
LogicException: The request was not redirected.
だから私の質問は次のとおりです。HREFがリダイレクトとして考えてきませんか?
ありがとうございます! Telest、
グリーゼ、 あなたの答えをありがとう。 私はあなたのソリューションを試しましたが、私はこのメッセージを受け取りました: "1)AppBundle \ Tests \ Controller \ DefaultControllerTest :: testRedirect falseがtrueであることをアサートできませんでした。 リダイレクトされていないことを意味しますか? ありがとう、 – Telest
はい、リダイレクトされていません。ところで、あなたがクリックした後に起こっているページがリダイレクトレスポンスを発行しない限り(不可能ではありませんが)、リダイレクトをクリックした後にリダイレクトするのは普通ではありません。 –
説明をありがとう。 "$ client-> followRedirect();をテストするためにどのようなテストを行うことができますか?" ? – Telest