【发布时间】:2019-07-08 15:35:31
【问题描述】:
希望就在这种情况下的最佳做法获得一些反馈 (量角器测试框架使用带有 async/await 而非 SELENIUM_PROMISE_MANAGER 的页面对象模型)。
假设我有一个名为setUsername 的函数,它只是在字段中设置用户名。我想知道使用 async/await 来等待函数本身的动作或返回动作是更好的做法。无论何时调用该函数,都需要等待。
选项1
this.setUsername = async function (username) {
await usernameInput.sendKeys(username);
}
选项2
this.setUsername = function (username) {
return usernameInput.sendKeys(username);
}
调用任一选项的语法
await loginPO.setUsername('admin');
推理:如果我使用 option1,那么我将声明 await 两次(在 func 和调用时),这似乎没有必要,但该函数的行为更符合我的预期。如果我选择选项 2,那么 await 只使用一次,但是从我只需要设置一个值而不需要返回任何东西的函数返回任何东西似乎是错误的。
【问题讨论】:
标签: selenium-webdriver async-await protractor pageobjects