如何在 javascript 测试用例中无限期等待页面加载
How to wait indefinitely till the page loads in javascript test case
我有一个 javascript 性能监控合成器 script.I 想知道我是否可以应用一个语句来等待页面加载,因为它有很多重定向并且需要时间。
目前正在使用...
$browser.sleep(80000);
我想将其替换为无限期等待页面加载。
您可以为此使用 clearTimeout()。
function timeOutFunction() {
myTimeOut = setTimeout(function()
{
$browser.sleep() }, 80000);
}
function stopTimeOutFunction()
{
clearTimeout(myTimeOut);
}
stopTimeOutFunction 将覆盖 timeOutFunction 函数的功能,从而防止超时。
是的,您可以 check/wait 无限期地直到页面在 JavaScript 的 window.onload
的帮助下加载。
试试下面的代码,它每 2 秒检查一次并等待页面加载。页面加载后,循环将中断,否则它将无限期 运行 :
var status = false;
window.sleep = function() {
return setTimeout(() => {
console.log("=> Waited for 2 seconds...");
}, 2000);
}
var getStatus = function() {
for(var i = 0;; i++) {
if(window.onload = function() {
return true;
}) {
status = true;
console.log(i+"). Loaded ? "+status);
break;
} else {
console.log(i+"). Loaded ? "+status);
sleep();
}
}
return status;
}
getStatus();
一旦页面加载成功,getStatus()
将 return 为真,否则在页面加载之前它不会 return 任何内容。
我有一个 javascript 性能监控合成器 script.I 想知道我是否可以应用一个语句来等待页面加载,因为它有很多重定向并且需要时间。
目前正在使用...
$browser.sleep(80000);
我想将其替换为无限期等待页面加载。
您可以为此使用 clearTimeout()。
function timeOutFunction() {
myTimeOut = setTimeout(function()
{
$browser.sleep() }, 80000);
}
function stopTimeOutFunction()
{
clearTimeout(myTimeOut);
}
stopTimeOutFunction 将覆盖 timeOutFunction 函数的功能,从而防止超时。
是的,您可以 check/wait 无限期地直到页面在 JavaScript 的 window.onload
的帮助下加载。
试试下面的代码,它每 2 秒检查一次并等待页面加载。页面加载后,循环将中断,否则它将无限期 运行 :
var status = false;
window.sleep = function() {
return setTimeout(() => {
console.log("=> Waited for 2 seconds...");
}, 2000);
}
var getStatus = function() {
for(var i = 0;; i++) {
if(window.onload = function() {
return true;
}) {
status = true;
console.log(i+"). Loaded ? "+status);
break;
} else {
console.log(i+"). Loaded ? "+status);
sleep();
}
}
return status;
}
getStatus();
一旦页面加载成功,getStatus()
将 return 为真,否则在页面加载之前它不会 return 任何内容。