[英]testing a new window with laravel dusk
我有这个页面,当点击一个特定的按钮时,会弹出一个新窗口(例如,一个带有_target = blank的锚标签)。 我想验证一个文本字符串出现在这个新窗口中,但是,使用Laravel Dusk, assertSee
似乎是测试原始窗口而不是新打开的窗口。
关于如何测试新打开的窗口内容的任何想法?
我今天遇到了这个问题。 您可以使用浏览器驱动程序获取所有打开的窗口,然后切换到最后打开的选项卡。
// 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 )
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.