TestCafe - 如何使用 class 名称获取带有标签 "th" 的 table 的索引号

TestCafe - How to get index number of table with tag "th" using class name

我正在尝试使用 body 列获取 link table header 列,因为这些列是可配置的并且顺序不断变化。唯一的识别方法是仅在 header 部分给出的 class 名称。如果我将使用 class 名称获取索引号,那么我可以使用该索引从 body 中获取值。我可以使用 getElementsByTag('th').nth(i).classNames 获取 class 名称。有什么办法可以达到这样的效果 - getElementsByClassName('.column-name').index ?

这是我的table样子-

<tr>
    <th class="column-name" >
        <span>Name</span>
    </th>
    <th class="spark-text-center column-age">
        <span>Age</span>
    </th>
    <th class="spark-text-center column-gender">
        <span>Gender</span>
    </th>
    <th class="spark-text-center column-status">
        <span>Status</span>
    </th>
</tr>

在选择器文件中 - // export const SELECTOR_TABLE_HEADER_CLASS = class => Selector(thead tr th.${class});

测试中-

console.log(等待SELECTOR_TABLE_HEADER_CLASS('column-name').index); // 给出 undefined

默认不支持您需要的功能。您可以 extend selectors with custom properties and methods. Please refer to this and this 个线程作为示例。