首页 > 解决方案 > 赛普拉斯,读出图像的属性,如标题或 alt 并进行比较

问题描述

我想读出 <img 属性并进行比较。

HTML 片段:

<span class="mat-button-wrapper">
    <img alt="Paul 00_AA_Projektleiter" src="assets/img/KapazuiBonsai_40_32.png" title="Paul 00_AA_Projektleiter" aria-label="project.AddedProjectLeader: QCBt4HwB0UC4Ud30Kp_T">
    <span>00_AA_Projektleiter</span>
</span>

赛普拉斯代码(作品):

cy.get(`[aria-label="project.AddedProjectLeader: `+globalProjectId+`"]`)
.get(`span`)
.contains('00_AA_Projektleiter')

cy.get(`[aria-label="project.AddedProjectLeader: `+globalProjectId+`"]`)
.get(`span`)
.should('contain', '00_AA_Projektleiter' )

赛普拉斯代码(不工作):

cy.get(`[aria-label="project.AddedProjectLeader: `+globalProjectId+`"]`)
.get(`img[title]`)
.contains('Paul 00_AA_Projektleiter')

cy.get(`[aria-label="project.AddedProjectLeader: `+globalProjectId+`"]`)
.get(`title`)
.contains('Paul 00_AA_Projektleiter')

我还尝试了 .its('title') 和 .wrap() 的不同组合,但没有任何效果。

那么如何在 <img-TAG 中获取 alt="..." 或 title="..." 等属性?因为我认为 contains.text 只能在 <span 之间获取 innerHTMLText 但是标签内的值呢?后来我有一个 <div WITHOUT <span 所以我需要读出 alt="..."

HTML 片段:

<div data-cy="project.AddedEmployee" aria-label="project.AddedEmployeeDiv: -SDE4HwB0UC4Ud30TJ9K">
    <div>
        <img class="mat-tooltip-trigger" alt="Bernd 00_BB_Testmitarbeiter" src="assets/img/KapazuiBonsai_40_32.png" aria-label="project.AddedEmployeeImg: -SDE4HwB0UC4Ud30TJ9K" aria-describedby="cdk-describedby-message-4" cdk-describedby-host="">
        <!---->
    </div>
</div>

标签: htmlimagepropertiescypresstitle

解决方案


你可以这样做:

cy.get('mat-button-wrapper').find('span').should('have.text', '00_AA_Projektleiter')

或者,如果您想首先找到图像属性然后断言文本,您可以执行以下操作:

cy.get(`[aria-label="project.AddedProjectLeader: ${globalProjectId}"]`)
  .parent('span')
  .should('contain.text', '00_AA_Projektleiter')

或者,如果您想验证alttitle属性,您可以执行以下操作:

cy.get(`img[aria-label="project.AddedProjectLeader: ${globalProjectId}"]`)
.should('have.attr', 'alt', 'Paul 00_AA_Projektleiter')

cy.get(`img[aria-label="project.AddedProjectLeader: ${globalProjectId}"]`)
.should('have.attr', 'title', 'Paul 00_AA_Projektleiter')

推荐阅读