Я пишу Cucumber.js
с Webdriver.io
. Пока что так хорошо, но проблема связана со слишком быстрыми ответами AJAX от макетного сервера. Я никогда не видел «Загрузка ...», поскольку он слишком быстро, уже загружен. Мое первое исправление заключалось в том, чтобы установить латентность 500 мс в макетный сервер, но я не уверен, что это самый культурный способ ... Любая идея? Благодарю.Как проверить слишком быстрый ответ AJAX с помощью Webdriver.io?
1
A
ответ
0
вы можете использовать этот: waitForTextExample.js
http://webdriver.io/api/utility/waitForVisible.html
<div id="elem" style="visibility: hidden;">Hello World!</div>
<script type="text/javascript">
setTimeout(function() {
document.getElementById('elem').style.visibility = 'visible';
}, 2000);
</script>
и:
it('should detect when element has text', function() {
elem = browser.element('#elem');
elem.waitForVisible(3000)
});
+0
Я хочу осветить начальный случай, когда текст «Загрузка ...» будет заменен некоторым содержимым после завершения запроса. Проблема в том, что ответ слишком быстрый, я не вижу «Загрузка ...», я не могу проверить, нет ли там или нет ... – haxpanel
1
Я была похожая ситуация и waitUntil с функцией обратного вызова утверждающего желаемое состояние помогло. Его документально подтвержденный here
Вы должны гордиться работой вашего сайта. ;-) –
Как насчет дросселирования скорости вашей сети. Вы можете попробовать его на хроме с сетью F12>, если это имеет значение. – Grasshopper
Я хотел бы найти решение, которое не зависит от моей локальной/текущей среды. – haxpanel