Laravel Dusk:元素在使用时不可交互 vue-fragment

Laravel Dusk: element not interactable when used vue-fragment

我很难将 Dusk 与此 package 结合使用。它删除了 "you should return one root element" 限制。

现在我想写 Laravel Dusk 测试,但我得到错误:

1) Tests\Browser\HomepageTest::it_shows_the_correct_value
Facebook\WebDriver\Exception\ElementNotInteractableException: element not interactable
  (Session info: chrome=81.0.4044.113)

如果我不使用片段,一切正常...但不幸的是,我必须使用它。

我创建了一个存储库来测试所有 Laravel Dusk 测试。 https://github.com/pmochine/fragment-dusk

知道如何在不调用 $browser->script() 函数的情况下进行测试吗?

您需要更改此行

$browser->assertSeeIn('.dialog', 'Option1'); 

在你的测试中this_test_fails_even_though_we_try_to_use_script到这个

$text = $browser->script("return document.querySelector('.dialog').textContent")[0];
$this->assertEquals('Result: Option1', trim($text));

之所以 laravel dusk 找不到片段的内容,是因为片段标签不会被 DOM 读取为节点。您可以在此处阅读更多相关信息 https://blog.logrocket.com/fragments-in-vue-js/