需要存储 table 的属性值以在空手道中进行断言

Need to store attribute values of a table for assertion in Karate

我有一个案例,其中定位器没有文本值,但它的名为 title 的属性有一个我需要断言的文本值。在为它编写自定义定位器时,我只能得到文本值“”,而不是特定的属性值,比如 title = "#abcdd"。

示例:

<div class="table-cell" role="cell" table-field= "risk" title="high">high</div>

high 作为我可以获得的值

然而,

<div class="table-cell" role="cell" table-field= "colour" title="#abcdd"></div>

本例中没有任何文本值,但需要获取标题属性值#abcdd

需要通用代码来获取此 table 中存在的所有此类标题属性值。 哪里出了问题?我有什么办法可以处理这个吗?或者该文本值需要包含在 html?

使用空手道作为自动化测试工具。

获取属性:https://github.com/intuit/karate/tree/master/karate-core#attribute

* def temp = attribute('.table-cell', 'title')

如果你有一个 Element 引用,你可以在其上调用 .attribute('title')https://github.com/intuit/karate/tree/master/karate-core#chaining

但请始终记住,您可以随时在任何元素上调用 DOM JS API。所以我把它留作你的家庭作业,让你弄清楚如何获得 Element.attributes 的结果,提出一个新问题,具体说明你在需要时尝试了什么。

请务必阅读有关 locateAll() 的内容,例如:

还有这个: