如何使用僵尸进行异步javascript测试?

时间:2017-08-10 07:42:01

标签: javascript node.js express mocha zombie-process

问题 我创建了一个带快递js的应用程序,我正试图用僵尸测试它。我已经编写了许多测试来检查网页上的内容。我手动检查了页面,内容正在从我们的数据库中正确加载。但是,当我运行测试时,我得到了不可预测的结果。

这些是我们的测试。第一次测试失败了。

before(function(done) {
   models.Listing.create({name: "Studio Flat in London", text: "This is a great flat in zone one."});
   models.Listing.create({name: "The Fish Market", text: "description"});
   done();
});

beforeEach(function(done) {
   browser.visit('/', done);
});

it('each property should have a title', function(done) {
   expect(browser.html("body")).to.include("Studio Flat in London");

});

it('each property should have a title the fish market', function(){
   expect(browser.html("body")).to.include("The Fish Market");
});

第一次测试失败,因为它找不到页面上的文本。第二次测试通过了。

评论 奇怪的是,寻找完全相同类型内容的测试通过。甚至是寻找依赖于数据库的其他内容的测试。例如,我测试标题和描述,我们可以找到描述。

可能导致问题的区域。 这是异步测试的问题,它是如何工作的? 如何确保在测试运行之前加载页面?

谢谢

0 个答案:

没有答案