首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Javascript JsTestDriver Jasmine & Jasmine-jquery

Javascript JsTestDriver Jasmine & Jasmine-jquery
EN

Stack Overflow用户
提问于 2011-09-20 04:03:08
回答 3查看 3.6K关注 0票数 5

我有很多Jasmine单元测试,它们为Javascripts代码运行单元测试。他们正在使用Jasmine-jquery插件来进行DOM操作。它们使用loadFixture加载HTML的fixture

我试图使用JsTestDriver和JasmineAdapter自动化这些单元测试,但所有的测试都涉及到DOM-jquery操作不能通过吗?这有什么问题吗?有没有办法在JsTestDriver中使用Jasmine-jquery?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2011-09-20 23:34:51

我会回答我自己,因为我找到了这个问题的解决方案。问题是Jasmine-Jquery正在使用ajax加载html fixture,并且它使用相对路径,假设html fixture位于相对于运行Jasmine测试的HTML容器的某个位置。但是因为JsTestDriver是在自己的“空间”中加载测试的,所以我们必须更改Jasmine-Jquery查找这些html fixture的位置,并让JsTestDriver加载它们。

因此,解决方案如下:

JsTestDriver具有加载静态html文件的能力。在配置文件中添加以下内容:

服务:-例如:服务:- fixtures*.html

现在您可以使用以下格式访问这些文件:localhost:9876/test/fixtures/...您让Jasmine-jquery知道从这个位置加载fixture。

瞧,你将会让你的测试再次工作。

票数 9
EN

Stack Overflow用户

发布于 2011-11-02 05:51:54

只是为了澄清一下previous posting

如果在您的jsTestDriver配置文件中有:

发球:

代码语言:javascript
复制
spec/fixtures/*_fixture.html

然后,您需要用以下命令覆盖测试套件

代码语言:javascript
复制
jasmine.getFixtures().fixturesPath = '/test/spec/fixtures';

它基本上是您在jsTestDriver配置文件的serve部分中声明的/test/ +路径。

票数 3
EN

Stack Overflow用户

发布于 2013-02-17 03:28:34

我刚刚发布了一个开源工具包,希望它能像帮助我一样帮助其他人。它是许多开源工具的组合,为你提供了一个开箱即用的骨干应用程序。

它对此有一个更优雅的解决方案,它使用requirejs text plugin和requirejs handlebars插件。

它提供了单一的运行命令: dev web server,jasmine单浏览器测试运行器,jasmine js- test -driver多浏览器测试运行器,以及JavaScript和CSS的拼接/缩小。它还输出用于生产调试的未最小化版本的应用程序,预编译您的handlebar模板,并支持国际化。不需要设置。它就是这样的。

http://github.com/davidjnelson/agilejs

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7476612

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档