Advice on Software Projects to Survive at COVID-19: Time to Skill Up Continuous Testing
This morning (2020–03–16), my daughter told me that her Uni announced “ close for one week” overnight. Based on what is happening in Europe and USA, unless a sudden miracle, all schools will be closed in Australia soon. If the situation gets worse, and it looks quite likely, Australia will be like Italy and Spain in a few weeks. This has led me to think: how software projects will survive this crisis? My advice: it is the perfect time to skill up your team on Continuous Testing.
The crisis will affect my business activities, but not my software development. Over the last 8 years, the development of all our software ( ClinicWise, WhenWise, TestWise, and BuildWise) has always been done in an off-line mode. Our customers communicate with us via feature requests/support tickets/emails. Please note this is not help desk support. We actively enhance our software based on customer’s requests. Most feature requests were implemented overnight and pushed into the production server the following day. How could this be possible? The answer is Continuous Testing.
In fact, we just pushed out a new release of WhenWise this morning. Yesterday afternoon, a customer (driving school) requested to display a special (and customizable) Covid-19 warning message on the booking form. As usual, it is now available (the day after the request).
Some might think it was a ‘cowboy’ act. No, it’s not. Here is our process:
- implemented the new feature
- added two automated functional tests (in Selenium WebDriver) to cover the new feature, passed locally in my testing IDE: TestWise
- git commit and push up, trigger a build to run all tests (438 in total) in a Continuous Testing process (using our own award-winning BuildWise server)
- detected one minor regression issue, fixed it, and another run in BuildWise.
- got a green build (see below)