Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Qunit + JSCoverage + Jenkins

I have started using Qunit to test my JS code. I am looking into JSCoverage to generate the coverage reports later. We have a CI server (Jenkins) which already do a few things with our PHP code and I was wondering if anyone can comment on how I can integrate the report from my Qunit and JSCoverage into Jenkins

Thanks Sparsh

like image 485
Sparsh Gupta Avatar asked Feb 28 '12 13:02

Sparsh Gupta


2 Answers

QUnit: use QUnit API to generate junit XML files. Here's a sample.

In Post-build Actions for your job you then check Publish JUnit test result report and specify your junit XML files (or their file pattern). Jenkins will then mark builds that have failed tests as unstable and produce a nice trend graph of successful/failing tests.

like image 135
malenkiy_scot Avatar answered Nov 10 '22 02:11

malenkiy_scot


A few more details, for those actually attempting this:

Putting together QUnit and Jenkins

If you want to run QUnit and publish the results in Jenkins, you'll need to do the following:

Step 1: Getting QUnit to generate an XML file compatible with JUnit.

  • If you're using Apache Ant, this question explains how to get QUnit to generate XML.
  • If not, you can use Grunt and grunt-qunit-junit, together with grunt-contrib-qunit, to run your .html tests.
  • And if you're not into either Ant or Grunt, here is a script for PhantomJS to run your tests directly and produce JUnit-style XML.

Step 2: Processing that XML file

This is the easy step - look in "Post-build Actions" for your job in Jenkins, and add the path to the XML file.

like image 37
Chris Avatar answered Nov 10 '22 00:11

Chris