July 30, 2019
Software Testing – the Bad, the Good and the Myths ______ Software testing is a field that has gained a lot more visibility in the past few years, even in Romania. Some people think that being a software tester is boring, only for geeks or that is something anyone can do and get paid a lot of money to do it. Well, some things are true, some are not. Whyttest’s Software Testing Department contributed in writing the below article in order to tell you what they actually do all day and if the myths really have some truth in them. ______ It’s pretty hard to describe a day of a software tester, since they vary from project to project, technologies used, skills and thus, it would be easier to better understand if we call it a week in the life of a software tester, which would be more accurate. The activity can be categorized into 6 separate events: Meetings Planning and status check are 2 very important things. Kick-off meetings, daily status, weekly status, beginning and end of sprint reviews, internal training and such, are a good way of ensuring the information needed to do the task is known to all the parties involved. In order to be efficient, software testers need to know about their subject from the get-go and have access to all the necessary information. Requirements Review Sometimes, a tester has to test an application that he has never interacted with before, so it might be useful for him to review the requirements set by those who do know it and he can also provide some feedback. There is always a lot of mutual learning by doing so. Sometimes the tester tests without the software requirements specifications and documentation. In this case, he will use exploratory testing, mind maps, and other techniques to learn more about the system. Test Preparation By examining the requirements and reading the appropriate documentation, software testers know how to get to work and it doesn’t just happen at a flick of a snap. Before executing tests, a tester must understand the technology, the data model, the risks, context, etc. This is when the tester creates the test cases and scripts, sets the time for each case or at least a higher-level estimate for a set of related test cases, among other tasks. Test Execution This is where the fun begins. Executing the tests manually or via an automation framework is happening during this phase. A few other important things to mention here are reporting defects, updating test cases on-the-go and providing a status report. Also, a very common practice is to also ask around for clarifications if something seems more than buggy or there is not enough information in the documentation offered. Bug Clarification Further investigation and assistance in root cause analysis – once bugs have been found, it is the tester’s job to explain the reported bugs, including to conduct a causal analysis. This can also cover reproducing the bug, which