Javascript 在量角器POM实现中获取错误
我创建了3个不同的文件1)config.js 2)Homepage.js 3)TestScript.js,执行config.js时出错 请帮我纠正一下 测试环境版本如下所示:- 量角器版本5.4.3 节点12.14.1 npm 6.13.4 错误:- PS E:\dragrator\dragratorwithpom\conf>dragrator config.js [10:03:18]I/launcher-运行WebDriver的1个实例[10:03:18] I/hosted-使用位于的selenium服务器 [10:03:25]E/launcher-第2行第1列构建中缺少字段Javascript 在量角器POM实现中获取错误,javascript,node.js,angularjs,selenium-webdriver,protractor,Javascript,Node.js,Angularjs,Selenium Webdriver,Protractor,我创建了3个不同的文件1)config.js 2)Homepage.js 3)TestScript.js,执行config.js时出错 请帮我纠正一下 测试环境版本如下所示:- 量角器版本5.4.3 节点12.14.1 npm 6.13.4 错误:- PS E:\dragrator\dragratorwithpom\conf>dragrator config.js [10:03:18]I/launcher-运行WebDriver的1个实例[10:03:18] I/hosted-使用位于的sele
url
信息:版本:“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:第2行缺少字段url
第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:未知
在Object.checkLegacyResponse(C:\Users\user\AppData\Roaming\npm\node\u modules\dragrator\node\u modules\selenium webdriver\lib\error.js:546:15)
在parseHttpResponse(C:\Users\user\AppData\Roaming\npm\node\u modules\dragrator\node\u modules\selenium webdriver\lib\http.js:509:13)
位于C:\Users\user\AppData\Roaming\npm\node\u modules\dragrator\node\u modules\selenium webdriver\lib\http.js:441:30
在processTicksAndRejections(internal/process/task_queues.js:94:5)中,来自:task:
WebDriver.navigate().到(未定义)
在EnableWebDriverProxy.schedule(C:\Users\user\AppData\Roaming\npm\node\u modules\dragrator\node\u modules\selenium webdriver\lib\webdriver.js:807:17)中
在Navigation.to(C:\Users\user\AppData\Roaming\npm\node\u modules\dragrator\node\u modules\selenium webdriver\lib\webdriver.js:1133:25)
在EnableWebDriverProxy.get(C:\Users\user\AppData\Roaming\npm\node\u modules\dragrator\node\u modules\selenium webdriver\lib\webdriver.js:988:28)
新建时(E:\dragrator\dragratorwithpom\pages\Homepage.js:8:24)
在新主页(E:\dragrator\dragratorwithpom\pages\Homepage.js:7:17)
反对。(E:\dragrator\dragratorwithpom\pages\Homepage.js:26:15)
at模块编译(内部/modules/cjs/loader.js:955:30)
at Object.Module._extensions..js(internal/modules/cjs/loader.js:991:10)
在Module.load(内部/modules/cjs/loader.js:811:32)
在Function.Module._load(内部/modules/cjs/loader.js:723:14)[10:03:25]E/launcher-进程退出,错误代码199
Config.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();
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 };
Testscript.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");
});
});
参考此
TestScript.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 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();
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 };
嗨,巴拉斯。谢谢你的快速回复。我收到以下错误“失败:Homepage.acceptCookie不是函数”。你能帮我纠正一下吗?请参考问题描述。我已经在那里发布了代码。你能在git repo中单独上传你的规范和页面文件并共享URL吗。我将更新更改请参考git