文章详情页
测试自动化html元素选择器。元素ID或DataAttribute [关闭]
浏览:94日期:2024-04-22 08:44:46
如何解决测试自动化html元素选择器。元素ID或DataAttribute [关闭]?
这接近于基于意见,这是应该有助于做出选择的总结。
这是一种 常见 的和熟悉的给大家做测试自动化 的方式来定位元素通常,这是在页面上定位元素的 最快 方法,因为硒会降低其执行速度document.getElementById(),而硒是由现代浏览器优化的(尽管,端到端UI测试的性能通常并不关键)它是每种硒语言绑定中的 内置 定位器如果您要使用Firebug或Chrome开发者工具-CSS选择器和XPath生成工具通常会id尽可能使用元素的s 提供更强大的定位器您将构建较短的CSS选择器和XPath表达式。例如#myid .someclass反对[automation-id=myid] .someclass。例如,如果将automation-id属性添加到所有所需的元素,则将在某种程度上对名称空间/作用域进行测试自动化-每个人都将仅从属性名称知道这是什么。意思是,您将大大减少开发人员有意更改属性的可能性,而不是id属性,属性也可以并且通常也用于应用程序客户端逻辑(请参阅此和此答案)另外,这是一些相关的线程:
使用Selenium时,是否在所有标准实践中都添加了ID?测试中识别元素的能力胜于ID解决方法我目前在UI测试自动化的元素上放置了一些ID。这些ID仅用于测试。我应该添加数据属性,而不是使其对将来的开发人员更具可读性(data-testHandle=“ mybutton”),还是应该坚持使用ID。
w3.org说:
定制数据属性旨在存储页面或应用程序专用的定制数据,对于这些数据,没有更多合适的属性或元素。
我倾向于保留ID,但是我中的某些人认为将来的开发人员会认为ID未被使用并删除它们。
这里有任何最佳做法。谢谢。
标签:
HTML
相关文章:
1. HTML5禁止img预览该怎么解决?2. javascript - vue+iview upload传参失败 跨域问题后台已经解决 仍然报403,这是怎么回事啊?3. python - django 按日归档统计订单求解4. objective-c - 从朋友圈跳到我的APP 如何实现?5. 百度地图api - Android 百度地图 集成了定位,导航 相互的jar包有冲突?6. 网页爬虫 - python爬虫用BeautifulSoup爬取<s>元素并写入字典,但某些div下没有这一元素,导致自动写入下一条,如何解决?7. javascript - vscode alt+shift+f 格式化js代码,通不过eslint的代码风格检查怎么办。。。8. 请教一个python字符串处理的问题?9. sql语句 - mysql中关联表查询问题10. 怎么可以实现在手机浏览器看到链接的title属性,就是鼠标放上去会有一个tip效果的
排行榜
