3
我正在编写量角器测试套件,并且需要测试一些使用从另一个套件生成的页面的东西。我只能想出编写测试的一种方式,但它似乎是一个好办法不写它: 如何编写一个依赖于另一个套件变量的茉莉花测试套件? (茉莉花1.3)
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'的内部?
你见过[这个量角器问题](https://github.com/angular/protractor/issues/592)吗? – glepretre
我没有,但我试图将它们嵌套在一个描述中。今天晚些时候我会更多地讨论这个问题。 –
你还在努力吗?如果我能更好地理解你想要做的事情,我想我可能会有所帮助。你能提供一个更具体的例子吗?在上面的例子中,最初的描述块有三个规范(它......),但是他们中没有一个断言什么,而是他们似乎在做某件事。通常情况下,你在之前的块中做事情,然后在块中做出断言,之前做过的事情产生了预期的输出或副作用。你的例子太抽象了,我不明白你为什么不遵循这种模式。 –