As of Feb 2017 it seems like there is no one tool available to run client and server tests in the console ( and thus CI services ). Is it just me, and my implementation?
Here’s my current take on the ecosystem:
practicalmeteor:mocha - Is what I am using, but only does web reporting. The last commit was in Jul 2016, and the owner has said he isn’t available to maintain this package (which I completely understand) . There is a design constraint: testing in browser looks great, but not productive in a number of workflows. Also there is an implementation issue: it runs client and server tests in parallel with the same state. So any ‘integration’ test that needs a DB state will cause a parallel test to fail.
practicalmeteor:mocha-console-runner + spacejam - This is what you would use to test practicalmeteor:mocha in the console. It is failing silently: https://github.com/practicalmeteor/spacejam/issues/67 . There are different points of failure having to install an npm module plus a large meteor package to run mocha tests. @jsep
dispatch:mocha-phantomjs - Is the most recently updated ( @aldeed is a true community hero btw ). The package is currently failing, and it seems phantomJS will always make it fragile.: https://github.com/DispatchMe/meteor-mocha-phantomjs/issues/33 .
xolvio:chimp - Can’t tell if it is intended to run full stack tests, or only acceptance. Anyhow I couldn’t get server integration and client unit tests to run. @sam
I’m not sure where to invest my effort in patching components, considering the fragmented state of testing.
@MDG @benjamn @debergalis @sashko Can we get some MDG resources on this? Testing is inconsistently documented, fragmented, and more importantly, broken. We need your help here if people are going to write quality apps with Meteor.