matomo-org / matomo

Empowering People Ethically with the leading open source alternative to Google Analytics that gives you full control over your data. Matomo lets you easily collect data from websites & apps and visualise this data and extract insights. Privacy is built-in. Liberating Web Analytics. Star us on Github? +1. And we love Pull Requests!
https://matomo.org/
GNU General Public License v3.0
19.57k stars 2.61k forks source link

Setup VisualPHPUnit to run new PHPUnit tests in browser #3290

Closed mattab closed 11 years ago

mattab commented 12 years ago

It would be very useful to run unit tests in the browsers:

It seems VisualPHPUnit is a good candidate to run our PHPUnit tests. Benaka has already started to use it and is happy with it, therefore I suggest we include the lib in tests/libs/ and link it from piwik/tests/ HTML page.

mattab commented 12 years ago

When running tests in the browser, would it be possible to bypass the need to edit the phpunit.xml to set the HOST and REQUEST_URI or are they still required?>

Proposed:

This way, developpers checking out fresh SVN could directly run tests in their browsers without editing any file which would be nice. Note: let's do this only if trivial, since it's not critical at all :)

diosmosis commented 12 years ago

Replying to matt:

When running tests in the browser, would it be possible to bypass the need to edit the phpunit.xml to set the HOST and REQUEST_URI or are they still required?>

A phpunit.xml file is not necessary if using VisualPHPUnit. It includes a file explorer widget so you can just ctrl+click to select the Core/Plugins/Integration directories then click Run Tests. See the screenshot here: https://github.com/NSinopoli/VisualPHPUnit

diosmosis commented 12 years ago

(In [6640]) Refs #3290, initial commit of visualphpunit. also modified tests/index.php to point to visualphpunit.

mattab commented 12 years ago

looks great. Some feedback:

diosmosis commented 12 years ago

(In [6672]) Refs #3290, augmented install of visualphpunit to provide following features:

diosmosis commented 12 years ago

(In [6687]) Refs #3290, allow visualphpunit to hide hidden folders (ie, .svn) in browser-based file explorer & allow users to specify tests to run via hash in URL (eg, /tests/lib/visualphpunit/#/Core/DataTableTest.php .

diosmosis commented 12 years ago

(In [6704]) Refs #3290, added VisualPHPUnit section to README.

diosmosis commented 12 years ago

(In [6726]) Refs #3290, use $.ajax instead of $.postJSON to avoid issue when jQuery tries & fails parsing.

diosmosis commented 12 years ago

(In [6733]) Refs #3290, show http response when visualphpunit gives HTTP error.

mattab commented 12 years ago

(In [6815]) Refs #3290 README tweak

diosmosis commented 12 years ago

(In [6818]) Refs #3290, use local JS/CSS instead of files delivered over content delivery network so internet access is not required.

mattab commented 12 years ago

(In [6821]) Refs #3290

diosmosis commented 12 years ago

(In [6822]) Refs #3290, move 'Run Tests' button to top nav bar so it's always visible & made sure .ini.php files don't get run as tests.

diosmosis commented 12 years ago

(In [6838]) Refs #3290, display total execution time below test statistics.

diosmosis commented 12 years ago

(In [6839]) Refs #3290, avoid fadeOut flash when hiding test results after running tests.

diosmosis commented 12 years ago

(In [6840]) Refs #3290, fix small bug in last commit

diosmosis commented 12 years ago

(In [6841]) Refs #3290, fix another bug in displaying suites bug.

diosmosis commented 12 years ago

(In [6847]) Refs #3290, work around bug in phpunit's JSON logger & added ability to specify/override GLOBAL variables before running tests in visualphpunit.

mattab commented 12 years ago

Very nice and useful work on this nice addition to the piwik dev toolkit!

Awesome work. Can you please close the ticket as the task seems complete (you can still commit and Refs# the ticket once it's closed)

diosmosis commented 11 years ago

(In [6940]) Refs #3290, show more execution statistics including peak memory usage, memory delta, total memory delta and total elapsed time.

diosmosis commented 11 years ago

(In [6952]) Refs #3290, get ReleaseCheckListTest to work w/ visualphpunit.

diosmosis commented 11 years ago

(In [7027]) Refs #3290, #3177 added XHProf support to VisualPHPUnit. Can now profile tests & benchmarks through browser.

diosmosis commented 11 years ago

(In [7028]) Refs #3177, #3290 add XHProf to tests/lib and tweak visualphpunit display.

mattab commented 11 years ago

(In [7055]) Refs #3290 Fix link to xhprof if piwik installed in sub directory. Btw the xhprof integration is an AWESOME feature, it just worked following the tests/README instructions!! loving it :)

diosmosis commented 11 years ago

(In [7540]) Refs #3290, added rudimentary (but usable) diffing feature to VisualPHPUnit for use with Piwik integration tests.

diosmosis commented 11 years ago

(In [7541]) Refs #3290, use test suite filtering option (ie, show only successes) when showing/hiding individual tests.

diosmosis commented 11 years ago

(In [7610]) Refs #3290, make diffs more visible.