I’m planning on recording a screencast over the holiday week and I would like to show everyone one way to migrate a Meteor 1.x app to 1.3 modules (using the latest beta).
I would love to hear what you would like to see in the videos (or even if anyone would be interested?)
If a single video gets too long i’ll break it up into a multi-part set.
Here’s the current agenda:
- Write end-to-end tests on the current app to prevent regressions in the upgrade
- Migrate the open sourced React-ive Meteor project to 1.3
- Write unit tests while migrating each module
- Write a few integration tests to test key areas (i’ll focus more on the unit and end-to-end)
- Convert basic React components to stateless components
- Unit test React components
I’ll likely use Karma + Jasmine for clienside unit test and Mocha for serverside unit tests. Karma can’t run server code (easily) so it would require another Node test runner for Jasmine. This will give me an opportunity to show you both Mocha and Jasmine. You should probably choose one for both of your unit tests.
For acceptance testing i’ll be using either Chimp or another JS based tool like Nightwatch. I’m leaning towards Chimp as i’ve been using it daily now and i’m really enjoying the synchronous code (via fibers).
I won’t likely test the Blaze code in this project as Blaze is very unfriendly to unit test (and the Blaze that exists is fairly logic-less).
Is there anything else that you would like to see covered?
To round out the video i’ll add integration tests in a 3rd part for those interested in testing the entire app (and not just migrating to 1.3). I’ve been wanting to try out Gagarin so i’ll most likely use that for integration tests (as long as it doesn’t conflict with 1.3).