【发布时间】:2019-10-03 15:56:39
【问题描述】:
我在 Visual Studio 中使用 Selenium。在我想打开一个下拉菜单的地方编写一个测试用例。我想使用它的唯一名称来识别菜单。
代码如下:
<div class="mat-select-value">
<span class="mat-select-placeholder ng-tns-c34-170 ng-star-inserted">
UniqueTextID
</span>
</div>
我的正常解决方案是这样的:
"//span[contains(@class,'mat-select-placeholder ng-tns-c34-170 ng-star-inserted')][contains(text(),'UniqueTextID')]"
问题在于 span 类:“mat-select-placeholder ng-tns-c34-170 ng-star-inserted”并不总是相同的。每次再次加载页面时,数字“c34-170”都会更改为一组新数字。
我的问题是:是否可以通过仅指定 div 类来识别“UniqueTextID”:“mat-select-value”跳过跨度类?
类似这样的:
"//div[contains(@class,'mat-select-value')][contains(text(),'UniqueTextID')]"
或者,如果我必须指定跨度类,是否可以只添加跨度类的开头,即每次都不会更改的部分:“mat-select-placeholder”?
【问题讨论】:
标签: c# html visual-studio selenium