如何在赛普拉斯中获取与某些文本匹配的自动生成的单选按钮ID?

时间:2019-03-20 01:44:24

标签: javascript cypress

我在页面上获得了一个记录列表,其中单选按钮的ID是自动生成的。如何在表格行中获取单选按钮的autogenerated id,其中该行还包含一些name列。我的整个想法是单击与该表记录中的名称匹配的正确单选按钮。

下面的赛普拉斯测试找到了与名称VM Survey相匹配的正确行,但是我不确定如何指示赛普拉斯单击同一行中的单选按钮;

cy.get('td:contains(" VM Survey ")').parents('.mat-table').find('tbody').find('tr').find('td').contains(" VM Survey ")

enter image description here

1 个答案:

答案 0 :(得分:0)

如果无法直接访问代码,则会有些困难,但请尝试一下。

好吧,因为您已经能够选择正确的行,所以可以声明一个等于该元素的变量:

const row = cy.get('td:contains(" VM Survey ")')
    .parents('.mat-table')
    .find('tbody')
    .find('tr')
    .find('td')
    .contains(" VM Survey ")
    .then($row => {
        debugger;
        // here you have access to the row variable 
        // you should be able to traverse the element
        //  to the radio button in the $row and .click()
    })
})