Javascript JsTestDriver Jasmine & Jasmine-jquery - Stack Overflow

I have lots of Jasmine unit tests, that are running unit tests for Javascripts code.They are using Jas

I have lots of Jasmine unit tests, that are running unit tests for Javascripts code. They are using Jasmine-jquery plugin to do DOM manipulation. they use loadFixture, to load fixtures of HTML

I tried to automate those unit tests, using JsTestDriver, with JasmineAdapter But all tests involve DOM-jquery manipulation are not passing? Is there something wrong with that? Is there a way to use Jasmine-jquery with JsTestDriver?

I have lots of Jasmine unit tests, that are running unit tests for Javascripts code. They are using Jasmine-jquery plugin to do DOM manipulation. they use loadFixture, to load fixtures of HTML

I tried to automate those unit tests, using JsTestDriver, with JasmineAdapter But all tests involve DOM-jquery manipulation are not passing? Is there something wrong with that? Is there a way to use Jasmine-jquery with JsTestDriver?

Share Improve this question asked Sep 19, 2011 at 20:03 Ghassan KarwchanGhassan Karwchan 3,5497 gold badges39 silver badges69 bronze badges
Add a ment  | 

3 Answers 3

Reset to default 9

I will answer myself because I found a solution for this problem. The problem was Jasmine-Jquery is using ajax to load the html fixture, and it uses a relative path, assuming the html fixtures are located in somewhere relative to the HTML container that is running Jasmine tests. but because JsTestDriver is loading the tests inside its own "space", so we have to change the location, where Jasmine-Jquery looks for those html fixtures, and make JsTestDriver load them.

so the solution is as follows:

JsTestDriver has the ability to load static html files. in config file add the following:

Serve: - for example: Serve: - fixtures*.html

now you can access those with the following format http:localhost:9876/test/fixtures/... you let Jasmine-jquery knows to load the fixtures from this location.

and voila, you will have your tests working again.

Just to clarify a bit the previous posting.

If in your jsTestDriver config file you have:

serve:

spec/fixtures/*_fixture.html

Then, you need to override your test suite with

jasmine.getFixtures().fixturesPath = '/test/spec/fixtures';

Which is basically /test/ + whatever path you declare in the serve section in your jsTestDriver config file.

I just released an open source toolkit which will hopefully help others as much as it helps me. It is a position of many open source tools which gives you a working requirejs backbone app out of the box.

It has a more elegant solution to this using the requirejs text plugin and the requirejs handlebars plugin.

It provides single mands to run: dev web server, jasmine single browser test runner, jasmine js-test-driver multi browser test runner, and concatenization/minification for JavaScript and CSS. It also outputs an unminified version of your app for production debugging, prepiles your handlebar templates, and supports internationalization. No setup is required. It just works.

http://github./davidjnelson/agilejs

发布者:admin,转转请注明出处:http://www.yc00.com/questions/1743725121a4496484.html

相关推荐

  • Javascript JsTestDriver Jasmine & Jasmine-jquery - Stack Overflow

    I have lots of Jasmine unit tests, that are running unit tests for Javascripts code.They are using Jas

    7天前
    10

发表回复

评论列表(0条)

  • 暂无评论

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信