Я хочу использовать классы ES6 в моем тесте на транспортир.Но когда я запускаю protractor conf.js
, у меня есть SyntaxError: Unexpected token export
в этой строке
export default class AngularHomePage {
Также я не могу использовать await / async по некоторым причинам, кроме настройки SELENIUM_PROMISE_MANAGER: false
.
Можетя вообще использую этот синтаксис, или я что-то упустил?
Я пытался импортировать этот класс как import AngularHomePage from './PageObject'
, но он дает мне тот же SyntaxError, но для этой строки.Тогда я использую const homePage = require('../Protractor demo/PageObject')
, но он тоже не работает.
Это мой код класса:
export default class AngularJsHomePage {
constructor() {
this.nameInput = element(by.model('yourName'))
this.greeting = element(by.binding('yourName'))
}
async get () {
await browser.get('http://www.angularjs.org')
}
async setName (name) {
await this.nameInput.sendKeys(name)
}
async getGreetingText () {
return await this.greeting.getText()
}
getGreeting () {
return this.greeting
}
}
Это мой код spec.js
// import { element, by, browser } from "protractor"
// import AngularJsHomePage from "./PageObject"
const homePage = require('../Protractor demo/PageObject')
describe('Angular homepage', function() {
it('should greet the named user', function() {
const page = new homePage()
await page.get()
await page.setName('Julie')
expect(await page.getGreetingText()).toEqual('Hello Julie')
})
})