next.js 如何使用Cypress比较不同页面中的React组件?

rsl1atfo  于 2023-01-08  发布在  React
关注(0)|答案(1)|浏览(150)

我想使用Cypress比较另一个页面中的组件是否相同。示例:我在 * 主页 * 中有一个定价组件,我想测试 * 定价页面 * 中的值是否相同。
我试过了,但没用:

describe('Comparar o componente Pricing em diferentes páginas', () => {

    it('', () => {
        cy.visit('http://localhost:3000')
        cy.get('.package-name').contains('Iniciante').invoke('text').as('name')

        cy.visit('http://localhost:3000/pricing')
        cy.get('.package-name').contains('Iniciante').invoke('text').as('name2')

        expect("@name").to.be.eq("@name2")

    })
    
})
niwlg2el

niwlg2el1#

您设置的别名不像变量。请使用.then()来提取它的值。
您也可以在cypress.config.js中将http://localhost:3000设置为baseUrl
以下是您的测试工作方式:

cy.visit('/')
cy.get('.package-name').contains('Iniciante').invoke('text').as('name')

cy.visit('/pricing')
cy.get('.package-name').contains('Iniciante').invoke('text').as('name2')

cy.get('@name').then(name => {
  cy.get('@name2').then(name2 => {
    expect(name).to.be.eq(name2)
  ])
})

相关问题