如何使用 JS 导入异步模块
how to import async modules with JS
可能是我问错了
我正在尝试测试一些网站,并在终端中抛出这个
terminal output
很明显,函数 returns uuid 在代码中被调用之后。
它正常工作,当我在代码中正确使用元素时,所以我认为原因是不正确的导入
这是我的代码:
file.js
describe('final homeTask', () => {
it('firstassigment', async () => {
let mainPage = require('../page/main.pageHW.js')
await browser.url('https://github.com/')
let signUpButton = await mainPage.topSignUpBtn()
await signUpButton.click()
})
})
main.pageHW.js
class MainPage {
get topSignUpBtn () { return $('a.btn-mktg:nth-child(1)') }
}
module.exports = new MainPage()
这是 Javascript 的问题,而不是 webdriver
的问题,您在 MainPage class:
中使用了 属性
class MainPage {
/// The get word make it a property
get topSignUpBtn () { return $('a.btn-mktg:nth-child(1)') }
}
module.exports = new MainPage()
这意味着你不需要括号来使用它,所以,替换:
let signUpButton = await mainPage.topSignUpBtn()
由
let signUpButton = await mainPage.topSignUpBtn;
此外,属性 不需要 await
子句。
如果您想了解更多信息,可以查看 this link。
可能是我问错了
我正在尝试测试一些网站,并在终端中抛出这个
terminal output
很明显,函数 returns uuid 在代码中被调用之后。 它正常工作,当我在代码中正确使用元素时,所以我认为原因是不正确的导入
这是我的代码:
file.js
describe('final homeTask', () => {
it('firstassigment', async () => {
let mainPage = require('../page/main.pageHW.js')
await browser.url('https://github.com/')
let signUpButton = await mainPage.topSignUpBtn()
await signUpButton.click()
})
})
main.pageHW.js
class MainPage {
get topSignUpBtn () { return $('a.btn-mktg:nth-child(1)') }
}
module.exports = new MainPage()
这是 Javascript 的问题,而不是 webdriver
的问题,您在 MainPage class:
class MainPage {
/// The get word make it a property
get topSignUpBtn () { return $('a.btn-mktg:nth-child(1)') }
}
module.exports = new MainPage()
这意味着你不需要括号来使用它,所以,替换:
let signUpButton = await mainPage.topSignUpBtn()
由
let signUpButton = await mainPage.topSignUpBtn;
此外,属性 不需要 await
子句。
如果您想了解更多信息,可以查看 this link。