When we say ‘software testing,’ we think about scripts, test loops, verification and validation. We think about unit tests, regression, compatibility, functionality, stress, acceptance, integration … and the list goes on. However, with the change in applications available to consumers and the rise of agile development that leaves little time for formal script writing, testing methodologies have also evolved. We now talk about visual test models, exploratory testing, and context driven testing.
Visual test models are becoming critical components of test plans. A visual test model explains the test plan through a picture, making it easy for non-technical people like business stakeholders to understand which functions, integrations, flows, etc. will be tested. The inputs of the stakeholders are critical to the testing process; visual test models make it easier for them to participate, make suggestions and point out insufficiencies in the test plan.
Visual test models reduce development time as they ensure critical business needs are covered at the onset. Visual test model strategies like mind mapping help testers isolate important issues from mounds of documentation and focus only on testing.
Exploratory testing is a direct contrast to traditional test methodologies. It is mostly manual and ad hoc. It demands complete engagement and product knowledge of the tester. Cem Kaner who coined this term in 1983 defined exploratory testing as ‘a style of software testing that emphasizes the personal freedom and responsibility of the individual tester to continually optimize the quality of his/her work by treating test-related learning, test design, test execution, and test result interpretation as mutually supportive activities that run in parallel throughout the project.’
Testers take responsibility of the success or failure of this testing approach. They must employ their own creativity to build test cases and strategies and analyze the product’s response from all possible angles, however unconventional. With each test they learn more, and use this learning to test the product in more unpredictable ways.
Exploratory testing has helped uncover bugs quickly as testers do not have to spend too much on time on scripting tests. They can implement deductive reasoning to extend their tests, identifying bugs that can go undetected by repetitive automated test scripts.
The problem with this approach is that tests are difficult to reproduce as they are conducted on the fly. This can be controlled by enforcing some level of documentation on testers.
Context driven testing
The ‘context driven’ school of testing supports exploratory testing and agile development. It believes testing should not conform to ‘best practices’ as this makes software products vulnerable. The school advocates testers’ freedom to tweak testing practices and use different tools for different applications and think out of the box when it comes to test cases.
Conventional automated tests cannot be completely ruled out as unbounded testing can too often be fruitless. However, mixing traditional and exploratory test methodologies can save time and money by exposing bugs early in the development process, make the product tamper-proof, and resilient. Google and Microsoft are some companies that employ exploratory testing strategies.
So, eager to learn why your business MUST take notice of Mobility ? Or want to decide which app is a right fit for your business? Download your choice !