赛普拉斯点击具有特定 src 的 table 中的第 n 个图像
Cypress click on an nth image in a table with specifc src
我在 table 中有一个项目列表,每个项目都有一个图像,活动的(蓝色)和非活动的(黑色),我如何为 cypress 进行此查询。
这是 table 列表的图片:
然后这是 table 的 html 代码:
下图展开后,src路径为/static/images/icon_profile.png
我现在的测试是这样的:
it('Should create a legal form of a Customer profile', ()=>{
cy.get('th').eq(50).find('img').should('have.attr', 'src', '/static/images/icon_profile.png').first().click()
})
但是当我 运行 它时,我得到这个错误:
你可以这样做
cy.get('tr').each(($ele) => {
if ($ele.attr('src') == '/static/images/icon_profile.png') {
cy.wrap($ele).parent('a').click()
}
})
您可以通过组合选择器更轻松地做到这一点
cy.get('tr img[src="/static/images/icon_profile.png"]')
.first()
.parent('a') // click the link not the img
.click()
在使用 .eq(50)
运行
时确认您有正确的索引
cy.get('tr img[src="/static/images/icon_profile.png"]')
.first()
.parent('tr')
.invoke('index') // which row is it?
.log()
我在 table 中有一个项目列表,每个项目都有一个图像,活动的(蓝色)和非活动的(黑色),我如何为 cypress 进行此查询。
这是 table 列表的图片:
然后这是 table 的 html 代码:
下图展开后,src路径为/static/images/icon_profile.png
我现在的测试是这样的:
it('Should create a legal form of a Customer profile', ()=>{
cy.get('th').eq(50).find('img').should('have.attr', 'src', '/static/images/icon_profile.png').first().click()
})
但是当我 运行 它时,我得到这个错误:
你可以这样做
cy.get('tr').each(($ele) => {
if ($ele.attr('src') == '/static/images/icon_profile.png') {
cy.wrap($ele).parent('a').click()
}
})
您可以通过组合选择器更轻松地做到这一点
cy.get('tr img[src="/static/images/icon_profile.png"]')
.first()
.parent('a') // click the link not the img
.click()
在使用 .eq(50)
运行
cy.get('tr img[src="/static/images/icon_profile.png"]')
.first()
.parent('tr')
.invoke('index') // which row is it?
.log()