我正在尝试登录网页。我填写了用户名和密码,并点击了登录按钮,如下面的代码所示。
casper.start(startURL, function () {
this.fill('.header-login-wrap', { // FILL THE USERNAME AND PASSWORD
email: username,
password: password
}, false); // Do not submit the form immediately
this.click('.btn-login'); // CLICK THE LOGIN BUTTON
this.waitForSelector('.modal',
function pass() {
console.log('pass');
},
function fail(resp) {
console.log('fail', resp);
}
);
});
点击按钮后,如何进入新页面。我们一登录,就会看到modal
,其中包含.modal
个班级。我想在它加载之前等待。但每次使用fail
调用函数resp = 5000
时。不明白这意味着什么。这是单击登录按钮然后等待加载新页面的正确方法吗?
答案 0 :(得分:0)
首先,您是否尝试将FileTest
的最后一个参数设置为ControllerTest
?
true
如果这不起作用,请尝试按步骤分开,例如fill()
步骤:
this.fill('.header-login-wrap', { // FILL THE USERNAME AND PASSWORD
email: username,
password: password
}, true); // Submit the form immediately
所有这些假设选择器是正确的。我添加了casper.then()
来登录图片脚本是什么'看到'。为此,您必须在创建casper对象时在casper.start(startURL, function () {
this.fill('.header-login-wrap', { // FILL THE USERNAME AND PASSWORD
email: username,
password: password
}, false); // Do not submit the form immediately
});
casper.then(function(){
this.click('.btn-login'); // CLICK THE LOGIN BUTTON
});
casper.then(function(){
this.waitForSelector('.modal', function(){
this.capture('after_login.png');
this.echo('pass');
},function() {
this.capture('after_login_fail.png');
this.echo('fail');
}
);
});
上将capture()
:设置为loadImages
。