Serenity-JS: ReferenceError: beforeAll is not defined
Serenity-JS: ReferenceError: beforeAll is not defined
我正在尝试使用 Serenity-JS 运行 我现有的 Protractor 脚本。
为此,我按照互联网的说明在安装 Serenity-JS 后将以下内容添加到我的配置中('npm install -g serenity-js',加上所需的'npm install -g mocha --save-dev');
exports.config = {
framework: 'custom',
frameworkPath: require.resolve('serenity-js'),
// ...
}
框架正在尝试 运行 我的测试,但似乎无法识别我的 beforeAll()。
我收到以下错误:
ReferenceError: beforeAll is not defined
我的 conf 文件引用的 Protractor 脚本在开头包含以下代码:
var generic = require('./generic.js');
var tools = new generic.Tools();
describe('Testscript 1', function () {
beforeAll( function () {
//Open none angular site
browser.driver.get('http://localhost/');
browser.driver.findElement(by.xpath('//*[@id="url"]/option[4]')).click();
browser.driver.findElement(by.xpath('//*[@id="submit"]')).click();
});
beforeEach(function () {
browser.refresh();
});
我对 Protractor 的框架完全陌生,所以我不知道去哪里找。
有人可以给我指出正确的方向吗?
提前致谢!
尽管表面上 Mocha and Jasmine 的语法可能看起来相似,但实际上它们是两个完全不同的框架,语义略有不同。
例如,在 Jasmine 中你会使用 beforeAll()
,在 Mocha 中你有 before()
.
要使您的测试与 Mocha 一起工作,您需要确保您使用的是 correct syntax:
describe('Testscript 1', function () {
before( function () {
//Open none angular site
browser.driver.get('http://localhost/');
browser.driver.findElement(by.xpath('//*[@id="url"]/option[4]')).click();
browser.driver.findElement(by.xpath('//*[@id="submit"]')).click();
});
beforeEach(function () {
browser.refresh();
});
现在关于 Serenity/JS 部分 :-)
您不需要全局安装 serenity-js
、mocha
或 protractor
(-g
开关)。事实上,在我看来,这是一种反模式。
查看 Installation section of the Serenity/JS Handbook 以了解有关所需依赖项的更多信息。
希望这个helps!
最佳,
一月
我正在尝试使用 Serenity-JS 运行 我现有的 Protractor 脚本。
为此,我按照互联网的说明在安装 Serenity-JS 后将以下内容添加到我的配置中('npm install -g serenity-js',加上所需的'npm install -g mocha --save-dev');
exports.config = {
framework: 'custom',
frameworkPath: require.resolve('serenity-js'),
// ...
}
框架正在尝试 运行 我的测试,但似乎无法识别我的 beforeAll()。
我收到以下错误:
ReferenceError: beforeAll is not defined
我的 conf 文件引用的 Protractor 脚本在开头包含以下代码:
var generic = require('./generic.js');
var tools = new generic.Tools();
describe('Testscript 1', function () {
beforeAll( function () {
//Open none angular site
browser.driver.get('http://localhost/');
browser.driver.findElement(by.xpath('//*[@id="url"]/option[4]')).click();
browser.driver.findElement(by.xpath('//*[@id="submit"]')).click();
});
beforeEach(function () {
browser.refresh();
});
我对 Protractor 的框架完全陌生,所以我不知道去哪里找。
有人可以给我指出正确的方向吗?
提前致谢!
尽管表面上 Mocha and Jasmine 的语法可能看起来相似,但实际上它们是两个完全不同的框架,语义略有不同。
例如,在 Jasmine 中你会使用 beforeAll()
,在 Mocha 中你有 before()
.
要使您的测试与 Mocha 一起工作,您需要确保您使用的是 correct syntax:
describe('Testscript 1', function () {
before( function () {
//Open none angular site
browser.driver.get('http://localhost/');
browser.driver.findElement(by.xpath('//*[@id="url"]/option[4]')).click();
browser.driver.findElement(by.xpath('//*[@id="submit"]')).click();
});
beforeEach(function () {
browser.refresh();
});
现在关于 Serenity/JS 部分 :-)
您不需要全局安装 serenity-js
、mocha
或 protractor
(-g
开关)。事实上,在我看来,这是一种反模式。
查看 Installation section of the Serenity/JS Handbook 以了解有关所需依赖项的更多信息。
希望这个helps!
最佳,
一月