angular6 - 无法使用 nightwatchjs 单击材料选项卡下一个选项卡
问题描述
我的应用程序中有一个材料选项卡。我正在尝试使用 nightwatch.js 自动化测试用例。但我无法使用 nightwatch.js 单击应用程序的下一个选项卡。我需要切换到下一个标签。促进任何帮助我的材料选项卡如下所示:
<mat-tab-group
id="detailsTab"
[selectedIndex]="tabIndex"
(selectedTabChange)="tabSelectionChange($event.index)"
>
<mat-tab id="sample" [label]="card">
<app-details *ngIf="tabIndex === 0"></app-details>
</mat-tab>
<mat-tab [label]="Report">
<app-report *ngIf="tabIndex === 1"></app-report>
</mat-tab>
<mat-tab [label]="perf">
<app-perf *ngIf="tabIndex === 2"></app-perf>
</mat-tab>
</mat-tab-group>
Nightwatch 代码如下所示:
.waitForElementVisible('#detailsTab > .mat-tab-group:nth-child(1)',6000)
.click('#detailsTab >.mat-tab-group:nth-child(1)')
解决方案
看起来你的选择器是错误的。您是否在浏览器控制台中检查过它以确认使用 $('#detailsTab > .mat-tab-group:nth-child(1)') 找到了该元素?
这里只是一个猜测,但这似乎可行:
.waitForElementVisible('mat-tab#sample',6000)
.click('mat-tab#sample')
推荐阅读
- php - 在 7.0 ubuntu 16.04 旁边安装 php 5.6 后,本地虚拟主机停止工作
- javascript - Array.prototype.find() 在异步函数中返回未定义
- python - 从python创建可执行文件时出错
- php - 试图从日期对象中获取年/月/日,但它返回 1970-01-01
- ios - 如何在 MKPointAnnotation 上添加 Tap 手势以显示另一个数据视图?
- c - Linux C中的同步问题同时读取和写入文件
- f# - F# - 获取模块中的方法列表
- angularjs - 如何从angularjs中的另一个控制器获取ng-model值
- c# - ASP.Net 面板到图像
- angular - 不了解将 Oauth 集成到 REST API 和单页应用程序的工作流程