Laravel 5 拉维尔黄昏中的测试焦点

Laravel 5 拉维尔黄昏中的测试焦点,laravel-5,laravel-dusk,Laravel 5,Laravel Dusk,我想知道是否有任何方法可以使用Laravel Dusk测试页面上的焦点设置。我有一个表单,当页面加载时,它的第一个元素应该始终接收焦点。我在黄昏文档中没有看到任何明显的信息。我使用的是Laravel 5.5。使用这个: $element = $browser->element($selector); $this->assertTrue($browser->driver->switchTo()->activeElement()->equals($element)

我想知道是否有任何方法可以使用Laravel Dusk测试页面上的焦点设置。我有一个表单,当页面加载时,它的第一个元素应该始终接收焦点。我在黄昏文档中没有看到任何明显的信息。我使用的是Laravel 5.5。

使用这个:

$element = $browser->element($selector);
$this->assertTrue($browser->driver->switchTo()->activeElement()->equals($element));

更新:在黄昏3.0.8中,您可以使用
assertFocused()
assertNotFocused()

不幸的是,至少在5.5中,assertTrue似乎不是有效的断言
assertTrue()
是PHPUnit的一部分,而不是黄昏的一部分。你试过了吗?我明白了-文档对黄昏来说真的没什么吸引力。作为一个刚接触自动化测试的人,我没有看到任何关于Dusk如何工作以及如何利用原生PHPUnit方法的清晰信息。我对您运行的代码有一个稍加修改的版本,但失败了。所以我会一直戳它直到我能让它工作。这可能还与我使用Vue.js来设置焦点有关。这总是容易受到时间问题的影响。尝试类似于睡眠(1)的方法在测试焦点之前。在Dusk 3.0.8中,可以使用assertFocused()和assertNotFocused()。