【发布时间】:2014-11-12 11:45:04
【问题描述】:
我们是 Protractor 的新手,并且正在通过代码来更好地理解它的功能,并与使用 selenium 编写测试进行比较。作为练习,我们尝试使用页面对象自动化 angularjs 主页 (http://www.angularjs.org)
我们的TestSpec.js文件如下
'use strict';
var DevelopPage = require('../test_11th/Develop_pom.js');
describe('angularjs homepage', function () {
var Devpage;
beforeEach(function () {
Devpage = new DevelopPage();
});
it('Develop page should be open', function () {
Devpage.click_develop().click();
//Devpage.Api_Reference();
//Devpage.func_link();
//Devpage.search('angular');
});
});
页面对象文件develop_pom.js如下
'use strict';
var DevelopPage = function () {
browser.get('http://www.angularjs.org');
};
DevelopPage.prototype = Object.create({}, {
click_develop: { function ()
{ browser.driver.findElement(By.linkText("Develop")).click(); }},
Api_Reference: { function ()
{ browser.driver.findElement(By.linkText("API Reference")).click(); }},
func_link: { function ()
{ browser.driver.findElement(By.linkText("function")).click(); }},
search: { : function (txt)
{ element(by.model('q')).click().sendKeys(txt); }}
});
在运行它时,我们遇到了错误 1) 异常加载:C:\Users\kirti.vm\AppData\Roaming\npm\node_modules\protractor\test_11th\AngularSpec.js 错误 信息: SyntaxError:意外的令牌( 堆栈跟踪: SyntaxError:意外的令牌( 在需要 (module.js:380:17) 在对象。 (C:\Users\kirti.vm\AppData\Roaming\npm\node_modules\protractor\test_11th\AngularSpec.js:4:21)
在 0.012 秒内完成 1 次测试,1 次断言,1 次失败
您能告诉我们哪里出了问题吗?我们可以不使用页面对象来实现我们的测试并在规范脚本中调用这些页面对象吗?
【问题讨论】: