jasmine-jquery如何模拟HTML fixture?

时间:2014-08-13 12:21:30

标签: javascript jasmine jasmine-jquery

我想知道jasmine-jquery是否存在基础知识,如浏览器引擎或用于模拟HTML内容的东西?

它只是一个自编的DOM模型吗?它甚至是一个DOM模型吗?

这个问题的原因是我需要知道如何用这个灯具编写可靠的测试。它们是否应该与装入灯具的整个应用程序一起使用,以便对应用程序进行单元测试?

如何将它们与不同浏览器的行为进行比较?那么它的行为更像是Chrome,Firefox,甚至是IE6,还是W3C标准的自定义实现?

不幸的是,我无法找到任何相关信息。也许这很明显?

2 个答案:

答案 0 :(得分:1)

查看Karma项目。它在真实浏览器中运行您的茉莉花测试,因此您不必担心它。  我不确定引擎茉莉用于驱动其DOM的驱动程序,但您最好在真正的浏览器中运行前端测试。

对于节点脚本,请使用jasmine_node。

祝你好运。

答案 1 :(得分:0)

Tl; Dr:将灯具简单地附加到 jasmine.Fixtures构造函数中定义的id为jasmine-fixture 的 div中。

您可以自己检查:

fit("See fixtures",function(){
    setFixtures("<h1 id='ahoy'>Hello World</h1>");
    expect($("#ahoy")).toExist();
    alert($("html").html());
});

在你的jasmine.jquery.js依赖项中,代码非常干净且易于理解,请检查以下方法 - Fixtures,addToContainer_,createContainer _

作为旁注 - 我们目前成功采用了Jasmine,它允许我们在我正在开发的前端ES5 + jQuery项目中遵循TDD。这与 create-react-app 的测试设置非常相似。