2017-08-13 51 views
1

特定のボタンをクリックすると、新しいウィンドウがポップアップします(例:_target = blankのアンカータグ)。この新しいウィンドウに一連のテキストが表示されていることを確認したいが、Laravel Duskを使用すると、assertSeeは新しく開いたウィンドウではなく元のウィンドウをテストしているようだ。laravel duskで新しいウィンドウをテストする

新しく開いたウィンドウの内容をどのようにテストすることができますか?

答えて

3

今日、この問題が発生しました。ブラウザドライバを使用すると、開いているすべてのウィンドウを取得し、最後に開いたタブに切り替えることができます。

// Get the last opened tab 
    $window = collect($browser->driver->getWindowHandles())->last(); 

// Switch to the tab 
    $browser->driver->switchTo()->window($window); 

// Check if the path is correct 
    $browser->assertPathIs('/path/of/site/in/new/tab'); 

あなたは夕暮れはかなり高速で、新しいページが完全にロードされる前に、それは主張し始めるかもしれないので、新しいウィンドウに切り替えた後、一時停止を追加する必要があります。

(この回答はgithubの問題で見つかりました。https://github.com/laravel/dusk/issues/336

関連する問題