Javascript 似乎无法使用cypress在dropdow中选择选项

Javascript 似乎无法使用cypress在dropdow中选择选项,javascript,automation,cypress,Javascript,Automation,Cypress,我正在尝试使用cypress从以下站点的“选择您的尺码”下拉列表中选择“小”: 就我的一生而言,我似乎无法得到它。我用了两种方法,继续用柏树撞墙 这就是我到目前为止所做的: /// <reference types="cypress"/> describe('Giant Website', () => { beforeEach('Navigate to Giant website', () =>{ cy.NavigateTo

我正在尝试使用cypress从以下站点的“选择您的尺码”下拉列表中选择“小”:

就我的一生而言,我似乎无法得到它。我用了两种方法,继续用柏树撞墙

这就是我到目前为止所做的:

/// <reference types="cypress"/>

describe('Giant Website', () => {

    beforeEach('Navigate to Giant website', () =>{
        cy.NavigateToGiantWebsite()
    })

    it('check stock', () => {
       cy.contains('button', 'I Understand').click()
       cy.get('[id="682"]').contains('a', 'TCR Advanced').click()
       cy.get('[alt="TCR Advanced 2 Pro Compact Unicorn White"]').click()
       cy.get('[title="Select your size"]').click({force: true})
       //cy.contains('li', 'Small ').click() this select x-small instead of small
       cy.get('[ng-show="lockedCart.length == 0"]').contains('[for="sizes"]').click() 
        
    });
})

请帮助

请尝试下面的内容,这对我有用,并从“选择您的尺码”下拉列表中选择“小”。您可以使用eq5选项进入正确的li元素并使用contains

cy.包含'li','Small'拾取x-Small大小的原因如下

cy.containsselector,content为字符串的content将查找包含指定字符串的any选项,因此将同时匹配x-small和small

它只返回一个元素,第一个元素是x-small

您可以使用简单的RegExp并使用插入符号^将其限制为在开始时匹配,而不是使用字符串

所以,这是有效的

cy.contains('li', /^Small/).click()
参考:

注意,如果您使用li计数,例如eq5,则如果网站更改选项,您的测试将需要更新

cy.contains('li', /^Small/).click()