Building your own software is impressive stuff – well done! But before you can put it on the market you’ll need to thoroughly test it to ensure that you don’t leave your users unhappy because of one silly glitch. Testing your programme can be as lengthy a process as building it, so strap yourself in and prepare for the long and bumpy road ahead. All be worth it in the end, I swear.
Gather a testing team
To test your software, you’ll need to gather a small group that give you focused feedback. These need to ideally be fellow coders who know where to look for when it comes to common bugs and crashes.
Get your testing team to all sign a Non-Disclosure Agreement – this will prevent them from stealing your ideas and sharing them with other programmers, as well as preventing reputation damaging media leaks.
Download testing management software
Whilst testing you need to be able to record all bugs, performance stats and updates in an organised manner. Test management tools can help to keep your testing controlled and structured. Find the software that is best suited to your programme.
Try to break your programme
Throughout the testing period, you and your team should be constantly finding new ways to crash your programme, and then finding methods of solving this. Try to load multiple processes at once to see how the programme reacts. If your programme has boxes for entering figures, try entering words and symbols in there to see what happens. Experiment with putting in really old or futuristic dates. Whilst some glitches will be obvious, others will be more hidden.
Fix bugs in order of priority
Record every new glitch into a list in order of priority. This should be measured on the severity of the damage caused by each bug. Blockers are bugs that completely crash the system, corrupt data or prevent the program from running. These should be at the top of your priority list as they can be some of the most time-consuming to fix. Below this you have ‘critical’ bugs. These are features that don’t work or return incorrect results. Start work on these once you have solved all blockers.
Difficult to use features or ones that look bad meanwhile are classed as ‘major’ bugs and should be your next priority. Below this you have ‘normal’, ‘minor’ and ‘trivial’ bugs – if you can get round to ironing out these, it can help perfect your programme, but they’re not essential and should be at the bottom of your to-do list.
Increase your testing group size
When all essential bugs have been addressed you can lock the features and move onto beta testing. This is where you should increase your tester group size in order to test connectivity. Some companies will hand over their software to the public to see how user-friendly it is.
From here on in, you should keep polishing up your software but not add any new features. Focus on the aesthetics and pre-existing features that don’t work properly and when these are all cleaned up, you can finally get ready to release your product.