Opened 16 months ago

Closed 12 days ago

#3606 closed Task (fixed)

Continuous Integration server improvements

Reported by: matt Owned by:
Priority: normal Milestone: Future releases
Component: Core Keywords:
Cc: Sensitive: no

Description (last modified by matt)

Improvement ideas

  • Run code coverage during the tests and produce reports: #4224
  • Implement new Webtests to automatically test the installation, update, login. See #2935
  • Run our piwik.js javascript tests on continuous integration server #4225
  • automated API doc generation for piwik.js tracker
    • jsphpdoc - does some text transformations and feeds the output to phpDocumentor; since it doesn't parse the JS, it doesn't recognize some of the syntactic sugar to define methods. The result is missing the public methods, but includes many private methods.
    • jsdoc-toolkit - uses rhino/java; despite failing miserably (initial output has only three functions: cvt_hex, piwik_log, and piwik_track), it's probably the more promising of the two given its feature set (and usage by other projects). It appears to we have to add more tags as hints...

Created as a followup / summary of the 2 year old ticket #1470

More information about piwik QA: http://piwik.org/qa/

Change History (2)

comment:1 Changed 6 months ago by matt (mattab)

  • Description modified (diff)

comment:2 Changed 12 days ago by matt (mattab)

  • Priority changed from major to normal
  • Resolution set to fixed
  • Status changed from new to closed

In the last 9 months we have made many changes and improvements to the QA environment. We are using Travis and testing on 3 different php versions, mysqli + PDO Mysql, we have unit tests, integration tests, plugin tests, and also Javascript tracker tests, and Angular JS tests (just starting those ones slowly!).

Well done to the team for their dedication to testing... it's so nice when we manage to develop in TDD style!

More info at http://piwik.org/qa/
And our travis builds: https://travis-ci.org/piwik/piwik

Note: See TracTickets for help on using tickets.