javascript - .expect 断言在页面模型中移动到函数时不起作用
问题描述
用逻辑替换 .wait(8000) 以检查 iframe 内的页面是否已加载,然后再单击继续。当代码在测试中时,它工作正常。我试图将代码移动到页面模型中的函数中,并且点击过早(即与 .wait() 值设置得太低一样)。
我尝试将检查分成 2 个不同的函数,结果相同。
在测试中
.expect(navigation.appRowFadeIn.exists).ok({ timeout: 8000 });
await t
.switchToIframe(navigation.iframe)
.expect(navigation.pageFrame.exists).ok({ timeout: 10000 });
await t
.switchToMainWindow()
在页面模型中
export class Navigation {
constructor(
public appRowFadeIn: Selector = Selector('.apps-row.fade-in'),
public iframe: Selector = Selector('#app-runner'),
public pageFrame: Selector = Selector('#page_frame')
) { }
async appnavigation() {
await t
.expect(Selector(this.appRowFadeIn).exists).ok({ timeout: 8000 });
await t
.switchToIframe(this.iframe)
.expect(Selector(this.pageFrame).exists).ok({ timeout: 9000 });
await t
.switchToMainWindow()
}
解决方案
我认为appnavigation
应该是:
async appnavigation() {
await t
.expect(this.appRowFadeIn.exists).ok({ timeout: 8000 });
await t
.switchToIframe(this.iframe)
.expect(this.pageFrame.exists).ok({ timeout: 9000 });
await t
.switchToMainWindow()
}
推荐阅读
- javascript - 在Javascript中将行附加到现有的gridview而不循环
- azure - ASP.NET Core Web 应用程序作为 Azure 服务总线使用者/接收器
- ipad - iPad 模拟器不会在 Xcode 11 beta 5 中启动 NavigationView 应用程序吗?
- java - 使用重新抛出异常的异常处理程序有什么明显的区别吗
- php - 从给定日期获取一周前 PHP
- java - 从 Android 应用程序上传大型 PDF 文件时得到空白响应
- python - 如何将字符串中的以下时间戳(包含UTC时间)转换为python2.6中的纪元时间?
- python - 如何根据 python 中的位置将 1 列数据帧转换为 3
- django - 使用具有外键的模型序列化程序在 Django Rest Framework 中的父表上执行 CRUD
- jmeter-5.0 - 发生错误时如何在jmeter中进行错误处理以注销