3 ms·
You're definitely correct that bugs in the new application code would be a showstopper. Another bit of infrastructure we plan to write about if there's interest
by msherry 14y ago
You're definitely correct that bugs in the new application code would be a showstopper. Another bit of infrastructure we plan to write about if there's interest is our testing setup.
Basically, before any deploy (not just drastic ones like this), not only do all existing unit tests for the new code have to pass (with a certain minimum code coverage threshold), but also a full acceptance suite, which tests the new code and how it connects to all of our other bits of infrastructure. We simulate an extensive set of operations that a client might perform against a test instance of the server, and also run a number of tests with all of our services loaded in-memory, which allows us to mock/patch arbitrary points in the code, to assert that what we expect to happen is actually happening. We also run each of our various clients' test suites against the new code, to make sure that each client sees the behavior it expects to see. This testing suite has dramatically increased our confidence any time we have to do a deploy, and best of all, it's all done automatically.
- mahmoudimus 14y agoIf HN is interested in how this is, I've demonstrated this to a few people but it allows us to move FAST and confidently. Since we use services internally, being able to confidently test interactions between all our services (6+ at this point), it is a HUGE win for us. Open up an issue here: https://github.com/balanced/balanced.github.com https://github.com/balanced/balanced.github.com if you're interested.
- samratjp 14y agoI would love to hear more about this!
- krichman 14y agoAre you seriously questioning that there's interest? I come here for the few links to tech articles with high signal:noise ratios. There are perhaps one or two a day. Judging by what just got posted, please assume you can post anything about your tech stack and we will love it.