gpt4 book ai didi

javascript - Protractor 页面对象 - 未调用方法

转载 作者:行者123 更新时间:2023-11-28 21:29:27 26 4
gpt4 key购买 nike

我正在使用 paject 对象学习 Protractor 。这是我的页面对象文件和我的测试规范。文件:

页面对象(文件名 PO_Login.js)

var ptor;
var LoginPage = function ()
{
ptor = protractor.getInstance();
this.login = function()
{
console.log("here");
var user=ptor.findElement(protractor.By.id("username"));
user.sendKeys('admin');
var pwd=ptor.findElement(protractor.By.id('password'));
pwd.sendKeys('admin');
}
}
module.exports = new LoginPage();

我的测试规范文件:

var ptor;
describe(
'homepage',
function()
{
var LoginPage = require('./LoginPO.js');
beforeEach(
function()
{
ptor = protractor.getInstance();
var driver=ptor.driver;
ptor.driver.get('http://localhost/xxxxxxxxxx/login');
ptor.waitForAngular();
}
);

it(
'xxxx',
function()
{
ptor = protractor.getInstance();
ptor.driver.findElement(protractor.By.tagName('html'))
.getAttribute('ng-app').then(function(text)
{
expect(text).toBe('xxxxxxx.sso')
}
);

ptor.driver.findElement(
protractor.By.tagName('body')).getAttribute('id')
.then(function(text)
{
expect(text).toBe('cas')
}
);
},
10000
);

it(
'login',
function()
{
console.log("here...");
LoginPage.login;
// var ctrlpoints_url=ptor.getCurrentUrl();
// expect(ctrlpoints_url).toContain('http://localhost/xxxxxxxxxxxxxxx/#/dashboard/points');
// expect(loginPage.header.getText()).toEqual('xxxxxx');
}
);
}
);

我不确定哪里出了问题 - Page 对象中定义的登录方法没有被调用。我使用 console.log() 来调试脚本。

最佳答案

没有调用login 函数。替换:

LoginPage.login;

与:

LoginPage.login();

除此之外,不要使用 ptorprotractor 全局定义的对象,而是使用 browserelementby,查看示例 here - 它至少会使您的代码更清晰。

关于javascript - Protractor 页面对象 - 未调用方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28443667/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com