【问题标题】:Problem with a parametrized test with cypress.iocypress.io 的参数化测试问题
【发布时间】:2021-09-20 16:08:38
【问题描述】:

我想使用 cypress.io 开始参数化动态测试。用于此的参数位于名为 params 的文件中。 在变量 params 从文件中获取参数之前,但是 forEach 循环循环了初始值 1 和 2。有人可以给我一个提示来解决问题吗?

describe('Suite', () => {

    let params=[1,2];

    before(() =>{

        cy.readFile('cypress\\fixtures\\params.txt').then( data=> {

            params = data;
            params= params.replace(/(\r\n)/gm, "\t");
            params = params.split('\t');
            cy.log(params);
          })
    })

    params.forEach( param  =>{

        it('Testing with '+param+':', ()=>{

            ...
        })

    });

})

【问题讨论】:

    标签: javascript testing automated-tests


    【解决方案1】:

    这个怎么样: 在夹具 params.json 文件中:

    [
      {
        "name": "Test 1",
        "something": "Some text"
      },
      {
        "name": "Test 2",
        "something": "Some other text"
      }
    ]
    

    并在集成 test.spec.js 文件中:

    const params = require('../fixtures/params.json');
    
    params.forEach((test) => {
        it(test.name, () => {
            cy.log(test.something);
        });
    });
    

    结果如下:

    【讨论】:

      猜你喜欢
      • 2017-09-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-11-29
      • 1970-01-01
      • 1970-01-01
      • 2019-01-04
      • 1970-01-01
      相关资源
      最近更新 更多