How have the approaches to testing changed?
It has travelled from the black box view of “nice to have” characteristics in the 60’s to the grey-box “Should Have” perceptions of the 80’s to the present day white box testing catering to customer demands of “Must Have” features!
The change has therefore been at the heart of the Software Development Life Cycle (SDLC) model itself. If you, as a tester, had used the Waterfall method, you would have been required to complete each phase before beginning the next! Or if you worked along the lines of the iterative model you would have implemented just a part of the software; each iteration producing newer versions which would be used to identify further requirements!
The modern day SDLC Agile approach, however is a combination of both the iterative & incremental models!
How would you decide if the Agile approach works for you?
It works well if you are looking for:
- Testing that can be adapted to both fixed or changing environments
- Functionality that can be developed rapidly and demonstrated
- A model that promotes teamwork across geographically distributed teams
- Minimum resource requirements
- Concurrent development & delivery
On a similar note, what are must haves in a test Automation Tool to build your Test Practice around the Agile methodology ?
- Zero dependency on physical infrastructure: According to studies, about 60% of Agile teams are dispersed across different geographies. Which means that setting up of physical infrastructure across each site becomes prohibitive due to its time, cost & human effort parameters.
How about a Cloud based Test Automation tool that allows your teams across different locations to access the tool from any device; save the test results within the tool itself for further review & collaborate towards achieving the end goal of delivering a “quality product” quickly.
- Ease of Use: Under the Agile approach, your teams will be required to work closely together, across different job roles; for instance your developer may be required to wear your tester’s hat!
Here is where a cloud based test automation tool comes in handy with its 24*7 access, zero downtimes and with its ease of use where any team member can login and implement test automation using the scriptless concept.
- Scriptless Automation: Under the traditional SDLC models you had to develop automated test scripts before they could be used. In Agile, the time between iterations is short; hence the time available to develop these automated scripts is also equally limited.
So how about a cloud based test Automation tool that does away with the entire process of scripting itself? Here, you enter keywords in English; the tool in turn interfaces with the framework & does the rest.
- Functional & Regression Tests: Since Agile involves both new & repetitive tests its becomes vital that a test automation tool needs to answer yes to both the below questions.
-> Does the new feature work in a similar manner across different devices? Does it work equally effectively across different versions?
With a cloud based test automation tool, you can automate your functional & regression test automation in 10 simple steps to ensure that your product works exactly as it should! What’s more you can also test it across different combination of browser & OS combinations towards further verification!
- Reduced License Costs : The basic ethos of an Agile methodology determines that each member of the close knit working groups have access to the tool & are able to further collaborate to ensure that a bug-free product is delivered at the end of the process.
Till date, this has proved to be a big challenge as exorbitant license costs dictated that the tool was procured for a select few who were considered to be “tool specialists”.
Well not anymore.
Here is a cloud based Test Automation Tool that does away with the traditional licensing scenario, allows unlimited users to access the tool from any location, any device and is reasonably priced at around what you would pay out as a salary to one of your manual testers!
- Reduced Manual Testing! In an Agile scenario, the numbers of tests keep increasing exponentially across each iteration, as does the requirement for manual testing; so the teams would ideally need a tool that reduces the time invested in the entire manual testing effort.
Here’s cloud based test automation tool that allows you to import your manual test cases into the tool, thereby allowing your QA team to quickly decide which tests needed to be automated and which do not. It also has a dashboard that gives exhaustive test summary of each test case for further collaboration & review!
- Ease of Maintenance & Updation of Automation Tests : In today’s agile world, while embrace change happens to be the mantra in product development, a test automation tool should be agile enough to accommodate these changes.
Say for eg – with change of a placement of an object or button in the application will lead to a huge impact on the automation tests. Look for a feature where it becomes easy for a tester to quickly make and apply such changes across automation tests
What has been your experience with Agile approach to SDLC? Leave your suggestions, comments here.