select 如何从 Laravel Dusk 中的下拉列表数组中随机取值?
How to select random values from an array of dropdowns in Laravel Dusk?
我是 Laravel Dusk 的新手,目前正在做一个简单的项目,您可以在其中添加多个下拉菜单。下拉菜单的名称类似于 name = "item[]"
。我怎样才能 select 每个下拉菜单和 select 随机选项?
我试过了:
$items = $browser->elements('input[name^="item[]"');
foreach ($items as $item) {
$item->select(); // Select random options
}
但它不起作用。没有错误,测试和断言没问题,但它不是 selecting 下拉列表中的值。
编辑
刚试过:
$items = $browser->elements('select[name^="item[]"'); // Change input to select
foreach ($items as $item) {
$item->select(); // Select random options
}
它现在给我一个错误“调用未定义的方法 select()
”。
用这个方法解决你的错误
$browser->select('select-box-name');
使用这个:
use Facebook\WebDriver\WebDriverBy;
$items = $browser->elements('select[name^="item[]"]');
foreach ($items as $item) {
$options = $item->findElements(WebDriverBy::cssSelector('option:not([disabled])'));
$options[array_rand($options)]->click();
}
我是 Laravel Dusk 的新手,目前正在做一个简单的项目,您可以在其中添加多个下拉菜单。下拉菜单的名称类似于 name = "item[]"
。我怎样才能 select 每个下拉菜单和 select 随机选项?
我试过了:
$items = $browser->elements('input[name^="item[]"');
foreach ($items as $item) {
$item->select(); // Select random options
}
但它不起作用。没有错误,测试和断言没问题,但它不是 selecting 下拉列表中的值。
编辑
刚试过:
$items = $browser->elements('select[name^="item[]"'); // Change input to select
foreach ($items as $item) {
$item->select(); // Select random options
}
它现在给我一个错误“调用未定义的方法 select()
”。
用这个方法解决你的错误
$browser->select('select-box-name');
使用这个:
use Facebook\WebDriver\WebDriverBy;
$items = $browser->elements('select[name^="item[]"]');
foreach ($items as $item) {
$options = $item->findElements(WebDriverBy::cssSelector('option:not([disabled])'));
$options[array_rand($options)]->click();
}