javascript - 在量角器 POM 实现中出现错误
问题描述
我创建了 3 个不同的文件 1)config.js 2)Homepage.js 3)TestScript.js,执行 config.js 时出现错误
请帮我纠正它。
测试环境版本如下:- Protractor 版本 5.4.3 节点 12.14.1 npm 6.13.4
错误:-
PS E:\Protractor\ProtractorWithPOM\conf> protractor config.js [10:03:18] I/launcher - 运行 1 个 WebDriver 实例 [10:03:18] I/hosted - 在http://使用 selenium 服务器localhost:4444/wd/hub [10:03:25] E/launcher -
url
第 2 行第 1 列缺少字段构建信息:版本:'3.141.59',修订:'e82be7d358',时间:'2018-11-14T08 :25:53' 系统信息:主机:'DESKTOP-OTBQBN0',ip:'192.168.229.2',os.name:'Windows 10',os.arch:'amd64',os.version:'10.0',java .version:'1.8.0_231' 驱动程序信息:driver.version:未知 [10:03:25] E/launcher - WebDriverError:缺少字段url
WebDriver.navigate().to(undefined) at thenableWebDriverProxy.schedule (C:\Users\user\AppData\Roaming\npm\node_modules\protractor\node_modules\selenium-webdriver\lib\webdriver.js:807:17) 在 Navigation .to (C:\Users\user\AppData\Roaming\npm\node_modules\protractor\node_modules\selenium-webdriver\lib\webdriver.js:1133:25) 在 thenableWebDriverProxy.get (C:\Users\user\AppData\ Roaming\npm\node_modules\protractor\node_modules\selenium-webdriver\lib\webdriver.js:988:28) 在新主页 (E:\Protractor\ProtractorWithPOM\pages\Homepage.js:8:24) 在新主页 (E: \Protractor\ProtractorWithPOM\pages\Homepage.js:7:17) 在对象。(E:\Protractor\ProtractorWithPOM\pages\Homepage.js:26:15) 在 Module._compile (internal/modules/cjs/loader.js:955:30) 在 Object.Module._extensions..js (internal/modules /cjs/loader.js:991:
配置.js
var HtmlReporter = require('protractor-beautiful-reporter');
exports.config = {
seleniumAddress: 'http://localhost:4444/wd/hub',
capabilities: {
browserName: 'firefox',
browserVersion: '72.0.2'
},
specs: ['E:\\Protractor\\ProtractorWithPOM\\tests\\TestScript.js'],
onPrepare: function() {
jasmine.getEnv().addReporter(new HtmlReporter({
baseDirectory: 'Reports/screenshots'
}).getJasmine2Reporter());
}
};
主页.js
let Homepage= function(){
var accept_Cookies=element(by.id('cookieConfirmationButton'));
var cityname=element(by.id("googlePlace"));
var area=element(by.id('myInput'));
this.getURL=new function(url){
browser.driver.get(url);
};
this.acceptCookie=new function(){
accept_Cookies.click();
};
this.entercityName=new function(cityname){
cityname.sendKeys(cityname);
};
this.enterareaname=new function(areaname){
area.sendKeys(areaname);
}
};
module.export=new Homepage();
测试脚本.js
let Homepage= require('../pages/Homepage');
describe("This is my pratractor test", function(){
it("TC0:This is Generali Global Health Provider Project", function(){
browser.driver.manage().window().maximize();
Homepage.getURL('https://pffrontendprod.azureedge.net/search');
expect(browser.driver.getTitle()).toEqual('Generali Global Health Provider Search');
});
it("TC1: Verify Search", function(){
Homepage.acceptCookie();
Homepage.entercityName("Navi Mumbai, Maharashtra, India");
Homepage.enterareaname("Fortis Hiranandani Hospital");
});
});
解决方案
参考这个
测试脚本.js
let hmpage = require('../pages/Homepage').Homepage;
describe("This is my pratractor test", () => {
it("TC0:This is Generali Global Health Provider Project", () => {
hmpage.getURL('https://pffrontendprod.azureedge.net/search');
expect(browser.driver.getTitle()).toEqual('Generali Global Health Provider Search');
});
it("TC1: Verify Search", () => {
hmpage.acceptCookie();
hmpage.entercityName("Navi Mumbai, Maharashtra, India");
hmpage.enterareaname("Fortis Hiranandani Hospital");
});
});
主页.js
let locators = {
accept_Cookies: browser.driver.element(by.id('cookieConfirmationButton')),
cityname: browser.driver.element(by.id("googlePlace")),
area: browser.driver.element(by.id('myInput'))
};
let methods = {
getURL: (url) => {
browser.driver.get(url);
},
acceptCookie: () => {
locators.accept_Cookies.click();
},
entercityName: (cityname) => {
locators.cityname.sendKeys(cityname);
},
enterareaname: (areaname) => {
locators.area.sendKeys(areaname);
}
}
exports.Homepage = { locators, methods };
推荐阅读
- logstash - Logstash 无法改变文本日志
- swift - 呈现 - 在 SwiftUI 顶部显示视图(我不想导航)
- docker - Docker 没有在代理下连接
- vb.net - VB 在启动画面上加载照片
- php - Doctrine - 返回不为 0 的结果
- c# - 如何调试 C# .net 中的装饰器方法?
- python - 数数河内塔的动作
- soap - SOAP WebService:soapenv:Server.userExceptionorg.xml.sax.SAXException:坏信封标签:定义
- ssis - 我想在 PackageAuditData 中加载包名称数据。尝试使用带有驱动列的系统变量,但在 ssis 中不起作用
- swift - Objective-C 枚举符合 RawRepresentable