我正在使用Angular的方案对我的应用程序进行端到端测试。我想基于需要一些时间加载的元素来运行测试。我可以使用sleep()
命令,但我宁愿做类似的事情:
whenLoaded('p .foo')
.then(function(elem) { expect(elem.text()).toBe(something); });
这可能吗?
答案 0 :(得分:-1)
Jasmine.js也允许你这样做。查找异步规范。
http://pivotal.github.io/jasmine/
describe("Asynchronous specs", function() {
var value, flag;
it("should support async execution of test preparation and exepectations", function() {
runs(function() {
flag = false;
value = 0;
setTimeout(function() {
flag = true;
}, 500);
});
waitsFor(function() {
value++;
return flag;
}, "The Value should be incremented", 750);
runs(function() {
expect(value).toBeGreaterThan(0);
});
});
});