[openstack-dev] [horizon] Javascript testing framework

Radomir Dopieralski openstack at sheep.art.pl
Tue Dec 3 09:32:17 UTC 2013


On 03/12/13 01:26, Maxime Vidori wrote:
> Hi!
> 
> In order to improve the javascript quality of Horizon, we have to change the testing framework of the client-side. Qunit is a good tool for simple tests, but the integration of Angular need some powerful features which are not present in Qunit. So, I have made a little POC with the javascript testing library Jasmine, which is the one given as an example into the Angularjs documentation. I have also rewrite a Qunit test in Jasmine in order to show that the change is quite easy to make.
> 
> Feel free to comment in this mailing list the pros and cons of this new tool, and to checkout my code for reviewing it. I have also made an helper for quick development of Jasmine tests through Selenium.
> 
> To finish, I need your opinion for a new command line in run_tests.sh. I think we should create a run_tests.sh --runserver-test target which will allow developers to see all the javascript test page. This new command line will allow people to avoid the use of the command line for running Selenium tests, and allow them to view their tests in a comfortable html interface. It could be interesting for the development of tests, this command line will only be used for development purpose.
> 
> Waiting for your feedbacks!
> 
> Here is a link to the Jasmine POC: https://review.openstack.org/#/c/59580/

Hello Maxime,

thank you for this proof of concept, it looks very interesting. I left a
small question about how it's going to integrate with Selenium there.

But I thought that it would be nice if you could point us here to some
resources that explain why Jasmine is better than QUnit, other than the
fact that it is used in some AngularJS example. I'm sure that would help
convince a lot of people to the idea of switching. A quick search for
"QUnit vs Jasmine" tells me that the advantages of Jasmine are
tight integration with Ruby on Rails and Behavior Driven Development
style syntax. As we don't use either, I'm not sure we want it.

I'm sure that pointers to resources specific for our use cases would
greatly help everyone make a decission.

Thanks,
-- 
Radomir Dopieralski




More information about the OpenStack-dev mailing list