私は、ラーベルルートmy.route
にリンクしているページ/my/example/page
にリンクがあります。外部サイトへのリダイレクトリンクのテスト
ルート
Route::group(['middleware' => ['auth']], function() {
Route::group(['middleware' => ['Some\Custom\Auth\Middleware:1']], function() {
Route::match(['GET', 'POST'], '/my/route/to/external/controller', '[email protected]')->name('my.route');
}
}
リンク/my/example/page
<a href="/my/route/to/external/controller">Link</a>
使用するHREFのURLを返しexampleController
コントローラでこのコントローラ方法externalLink
このルート/my/route/to/external/controller
点を、上
public function externalLink()
{
return $this->redirect->away('www.externalsite.com');
}
私のテストは、私はclick()
試験方法を使用するとき、私は常にエラーに
のSymfony \コンポーネント\ HttpKernel \例外の\ NotFoundHttpException
を取得
$this->visit(/my/example/page)
->click('Link')
->assertRedirectedToRoute('my.route');
です。
私はこれを@expectedException
を使って捕まえることができますが、彼は私が別のページを見ることを期待しているので助けになりません。
私はまた(一緒にではなく)試みました。ブラウザの検査から
->assertResponseStatus(200);
->seePageIs('www.externalsite.com');
->assertRedirect();
->followRedirects();
、URLがクリックされたとき、私は
http://www.example.com/my/route/to/external 302
http://www.externalsite.com 200
どのように機能を外部サイトにとリダイレクトをクリックされたボタンをテストすることができますか?
何あなたのルートが見えますか? – tptcat
@tptcat質問を更新しました – myol