Php 断言页面上有一定数量的元素
我用Laravel Dusk写了一个测试,以确保索引页上有10篇文章 以下是一些HTML代码:Php 断言页面上有一定数量的元素,php,selenium-webdriver,laravel-5,laravel-5.4,laravel-dusk,Php,Selenium Webdriver,Laravel 5,Laravel 5.4,Laravel Dusk,我用Laravel Dusk写了一个测试,以确保索引页上有10篇文章 以下是一些HTML代码: <h1>A list of articles</h1> <ul> @foreach($articles as $article) <li class="article-item"> {{ $article->title }}</li> @endforeach </ul> 但事实上,看起来La
<h1>A list of articles</h1>
<ul>
@foreach($articles as $article)
<li class="article-item"> {{ $article->title }}</li>
@endforeach
</ul>
但事实上,看起来Laravel Dusk不支持同时选择多个元素。那么在这种情况下,我可以如何构造我的测试?有没有可能在黄昏中我使用WebDriverAPI来选择这些元素
谢谢大家! 事实证明,$browser实例存储了它正在使用的驱动程序,这意味着在测试方法中,我实际上可以通过WebDriver API选择HTML元素 因此,可能的解决办法是
/** @test */
public function it_displays_a_list_of_articles()
{
$this->browse(function ($browser) {
$browser->visit('/articles');
$elements = $browser->driver->findElements(WebDriverBy::className('article-item'));
$this->assertCount(10, $elements);
});
}
/** @test */
public function it_displays_a_list_of_articles()
{
$this->browse(function ($browser) {
$browser->visit('/articles');
$elements = $browser->driver->findElements(WebDriverBy::className('article-item'));
$this->assertCount(10, $elements);
});
}