用户有第一个单击到达日期的单击,第二次单击以送达日期。
这是我的代码。
//Change Arriving Date
$dateFrom = date( 'j'); // Get today's Day
$dateTo = date('j', strtotime("+2 day")); // Add x Days from now
$I->click('.js-date-view');
$I->waitForElement('.mod-3rd-level-navi__anchor');
$I->click($dateFrom);
$I->wait(1);
$I->moveMouseOver($dateTo);
$I->click($dateTo);
$I->wait(1);
//Submit
$I->click('.js-send-form.btn-primary');
测试在$dateTO
失败,但在$dateFrom
时不会失败。Baiscly它不想单击"离开日期"。
步骤在12
时失败 12. $I->moveMouseOver("11") at tests/acceptance/../../changeDetailsCest.php:42
11. $I->wait(1) at tests/acceptance/.../.../changeDetailsCest.php:41
10. $I->click("7") at tests/acceptance/.../.../changeDetailsCest.php:40
9. $I->waitForElement(".mod-3rd-level-navi__anchor") at tests/acceptance/.../.../changeDetailsCest.php:39
8. $I->click(".js-date-view") at tests/acceptance/.../.../changeDetailsCest.php:38
7. $I->wait(1) at tests/acceptance/.../.../changeDetailsCest.php:32
错误
[MalformedLocatorException] CSS or XPath locator is malformed: 11
moveMouseOver
的参数不同于 click
。
click
试图通过文本找到元素 -
如果给出了模糊的定位器,则将搜索该页面以匹配定位器字符串的按钮,链接或图像。对于按钮,搜索"值"属性,"名称"属性和内部文本。对于链接,搜索链接文本。对于图像,搜索了任何父链接的" alt"属性和内部文本。
moveMouseOver
不按文本搜索,您必须为其提供有效的CSS或XPATH选择器。示例:$I->moveMouseOver('#date-11')
。
如果您可以使用它,则可以使用ClickWithLeftButton方法而不是moveMouseOver
click
的组合。