这是一个使用页面对象模型的自动化框架。我对诺言使用异步/等待方法。我正在使用TS,将其编译为JS(量角器),然后执行脚本。
页面对象:
async addProjectDetails(): Promise<void> {
expect(await this.currentStep.getText()).toBe("Records"); //There is no element like this, which I know.
await this.projectTitle.sendKeys("Project Feb 1");
await this.projectDescription.sendKeys("Project Description");
}
规格:
it('should create a project successfully', async () => {
try {
await dashboard.createNewProject();
await dashboard.addProjectDetails();
}
页面已加载,该元素不存在。我收到错误消息:
NoSuchElementError: No element found using locator: By(xpath, //custom-expandable-title[@class='not-completed active']//span[@class='child-title'])
但是,通过规范并没有失败。它不应该失败。这不是误报吗?
答案 0 :(得分:0)
在try
中引发的错误不会影响最终结果,它们将停止执行try块并开始执行catch
块。如果您希望测试的行为像这样,则必须将addProjectDetails
的调用移出try
块。