如何使用 验证图像在前端可见/存在或 标签

发布于 2025-01-11 09:01:07 字数 774 浏览 0 评论 0原文

有谁知道如何使用 验证图像是否存在?我只能通过它的类进行验证,例如:

it('Verifying vertical product', () => {
    cy.get('.stage --vertical').should('be.visible')
})

但我想知道如何使用 img src 或 href 标签进行验证。谢谢

完整 HTML:

<a href="haigclub.diageoplatform.com/en/our-whisky/haig-club-clubman"> 
  <img style="margin: auto; display: block;" class="stage__image" 
    src="haigclub.diageoplatform.com/user/themes/haig/images/bottle.png"> 
</a>

在此处输入图像描述

Does anyone know how I can verify if an image exists using its <a href> or <img src>? I can only verify by its class such as:

it('Verifying vertical product', () => {
    cy.get('.stage --vertical').should('be.visible')
})

but I want to know how to verify with img src or href tag. thank you

Full HTML:

<a href="haigclub.diageoplatform.com/en/our-whisky/haig-club-clubman"> 
  <img style="margin: auto; display: block;" class="stage__image" 
    src="haigclub.diageoplatform.com/user/themes/haig/images/bottle.png"> 
</a>

enter image description here

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

挖鼻大婶 2025-01-18 09:01:07

如果我理解正确,您正在寻找

cy.get('a[href="..."]')

类似的

cy.get('img[src="..."]')

位置,您应该在其中添加适当的文本而不是 ...

当然,请遵循 .should('be.visible')

如果你想使用部分匹配,你可以使用

cy.get('img[src$="bottle.png"]')  // NOTE src$= 

If I understand correctly, you are looking for

cy.get('a[href="..."]')

Similarly

cy.get('img[src="..."]')

where you should add the appropriate text instead of ...

Of course, follow with .should('be.visible').

If you want to use a partial match, you can use

cy.get('img[src$="bottle.png"]')  // NOTE src$= 
青春如此纠结 2025-01-18 09:01:07

更明确的测试可能会选择 href.find() img,以避免返回多个图像的问题。

cy.get('a[href^="haig-club-clubman"]')
  .find('img')                             // find inside previous selector (a[href])
  .should('have.attr', 'src')
  .and('include', 'bottle.png')            // explicit test of src attribute

A more explicit test might select href and .find() the img, to avoid the problem of returning multiple images.

cy.get('a[href^="haig-club-clubman"]')
  .find('img')                             // find inside previous selector (a[href])
  .should('have.attr', 'src')
  .and('include', 'bottle.png')            // explicit test of src attribute
新雨望断虹 2025-01-18 09:01:07

如果您想使用图像名称来断言图像,您可以执行以下操作:

cy.get('img').invoke('attr', 'src').should('include', 'bottle.png')

If you want to assert the image with the image name you can do something like:

cy.get('img').invoke('attr', 'src').should('include', 'bottle.png')
送你一个梦 2025-01-18 09:01:07

另一种选择是应用检查属性的过滤器。

这里不是最佳选择,但对于更复杂的场景很有用。

cy.get('img')
  .filter('[src^="bottle.png"]')

Another option is to apply a filter which checks the attribute.

Not optimal here, but useful for more complicated scenarios.

cy.get('img')
  .filter('[src^="bottle.png"]')
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文