gpt4 book ai didi

javascript - 如何编写依赖于另一个套件变量的 Jasmine 测试套件? ( Jasmine 1.3)

转载 作者:行者123 更新时间:2023-11-29 15:39:17 25 4
gpt4 key购买 nike

我正在编写 Protractor 测试套件,需要测试使用从另一个套件生成的页面的东西。我只能想出一种编写测试的方法,但这似乎不是一个好的编写方法:

var someStuffToSave = [];

describe('description of first thing', function(){
it('should generate some things', function(){
someStuffToSave.push(generateSomeThings());
});
it('should generate some things', function(){
someStuffToSave.push(generateSomeThings());
});
it('should generate some things', function(){
someStuffToSave.push(generateSomeThings());
element(by.id("something")).getText().then(function(){
for(var i = 0; i < someStuffToSave.length; i++) (function(){
var idx = i;
describe('thing analysis' + idx, function(){
it('should be something', function(){
expect(someStuffToSave[idx]).toEqual(true);
});
});
})();
});
});
});

我宁愿做这样的事情,但问题是第二个描述的内部立即执行,不要等待第一个描述完成。

var someStuffToSave = [];
describe('description of some thing', function(){
it('should generate some things', function(){
someStuffToSave.push(generateSomeThings());
});
it('should generate some things', function(){
someStuffToSave.push(generateSomeThings());
});
it('should generate some things', function(){
someStuffToSave.push(generateSomeThings);
});
});
describe('analyzing things', function(){
for(var i = 0; i < someStuffToSave.length; i++)function(){
var idx = i;
describe('thing ' + idx, function(){
it('should be something', function(){
expect(someStuffToSave[idx]).toEqual(true);
});
});
}
});

有没有办法在第一个描述中没有'then'的情况下写这个?

最佳答案

一般来说,您永远不应该在“描述” block 内对 Jasmine 进行任何设置登录。那里的代码在 Jasmine 设置您的测试时运行,而不是以正确的顺序运行。如果您只是将 for 循环放在“it” block 中,那么您的第二种方法应该有效。

关于javascript - 如何编写依赖于另一个套件变量的 Jasmine 测试套件? ( Jasmine 1.3),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22387647/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com