【问题标题】:How do i create an array for zip codes to enter in a search bar如何为邮政编码创建一个数组以在搜索栏中输入
【发布时间】:2021-08-25 20:04:43
【问题描述】:

我希望创建一个数组来存储搜索栏的多个条目, 例如在搜索栏中输入邮政编码,但存储 5-10 个邮政编码的数组

我知道如何使用 .get 和 .click 检索搜索栏以允许文本输入,但不确定如何创建和使用数组以使测试通过数组中的所有元素运行

【问题讨论】:

    标签: arrays loops cypress


    【解决方案1】:

    Cypress 测试是用 javascript 编写的 - 您可以创建一个数组然后循环遍历它:

    const zips = ['00000','12345','99999'];
    
    zips.forEach( (zip) => {
        cy.get('#yourElement).type(zip)';
     } );
    

    【讨论】:

      【解决方案2】:

      我使用 Google 搜索栏尝试了此代码。我只是使用 vanilla javascript 遍历数组:

      const searchTerms = ['cypress', 'puppeteer', 'cucumber'];
      
      describe('Solving stackoverflow question', () => {
        beforeEach(() => {
          cy.visit('https://www.google.com/');
        })
      
        it('Google search', () => {
          for (const term of searchTerms) {
              cy.get('[aria-label="Search"]').clear()
                .type(`${term}{enter}`);
              cy.log(`Searched ${term}`);
          }
      
        });
      });
      

      【讨论】:

        【解决方案3】:

        管理来自fixtures 的测试数据始终是一个好习惯。

        首先,在fixtures文件夹zip.json下创建一个文件。该文件将包含我们的邮政编码数组。

        ["12345", "434343", "232525"]
        

        然后在你的测试中,你可以直接写:

        cy.fixture('zip.json').then(testdata => {
          testdata.forEach(zipCode => {
            cy.get('element').type(zipCode)
          })
        })
        

        【讨论】:

          猜你喜欢
          • 2020-04-15
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2016-09-29
          • 1970-01-01
          • 1970-01-01
          • 2011-03-28
          相关资源
          最近更新 更多