赛普拉斯动态创建测试

时间:2020-02-12 09:01:45

标签: javascript dynamic mocha cypress browser-automation

我有一个toc.json文件,其中包含应用程序中可用的路由。路线的数量将不时变化。我想在运行时通过访问URL(例如http://localhost:8080/toc.json)来获取此toc,然后 为每个可用路由动态生成测试。以下是我正在尝试的片段:

 describe('Load Samples',()=>{
    let samples:Root={toc:[]};
    cy.request('http://localhost:8080/toc.json')
        .its('body')
        .then((data)=>samples = data);

    it('Samples Were Loaded',()=>{
          expect(samples).to.have.property('toc').to.have.length.above(0);
    });

    describe('Samples',()=>{
        if(samples.toc.length > 0){
            samples.toc.forEach(node => {
                     describe(node.name,()=>
                     {
                         node.items.forEach(item=>{
                             it(item.name,()=>{
                                  cy.visit(`http://localhost:3001/sample/${item.path}`)
                             })
                         })
                     })
                 });
             }
    })
})

问题在于,samples.length始终保持为0,因此未生成我的测试。关于我可能会缺少的任何想法/建议吗?

0 个答案:

没有答案