Monday 5 September 2011

Challenges faced by software testers

Challenges faced by software testers:

Top 10 Challenges faced by Software testers are on “Domain Knowledge”, “Time”, “Test Estimation”, “Test Data Setup”, “Test Automation”, “Test environment Setup”, “Performance Testing”, “Metrics”, “Unavailability of right Tools”, “Team at Multi location”
1. Domain knowledge: Software testing can be effective only when testers understand customer’s business, in order to understand customer’s business one has to have good knowledge of Customer’s business domain.  Poor domain knowledge of testers will result in ineffective Test Scenarios, test scripts and more UAT and post implementation defects.
2. Time:  Time has always posed a challenge for Software testers, especially to execute Regression tests.  During testing phase, testers are asked to perform multiple rounds of Regression tests and these regression test cases can be of few 100s to 1000s depending on the size of the application.  However regression test cannot be left out, so the best way to manage multiple rounds of regression testing is by automating regression tests that are not subject to direct change as part of the current release.
3. Test Estimation: There are several industry acknowledged Test Estimation methods.  Deriving accurate test estimates is one of most important factors for success of Software Testing Phase.  Good Test Estimates will include and estimate time for all the activities performed during Software Test Life Cycle be it small or big task.
4. Test Data setup: Test Data setup will be more challenging when data setup involves mainframe or multiple applications or databases.  Test Data creation for Load or performance testing will require writing scripts or SQL Procedures.
5. Test Automation: Challenge is test automation is not scripting, instead it’s more on effort estimation, designing framework, creating reusable components and most 4hallenging task of is reducing effort required for test script maintenance.
6. Test environment setup: In most of the bigger organizations, Test environment setup is done by Operations / Technical support team.  However in smaller or mid sized organizations,   Test environment setup feels complicated as it could require installing Operating System, Drivers, Installation, configuration and fine tuning of Database, Installation and configuration of Web server or application servers or firewalls, SSL Certificates, finally installation and configuration of the application being tested.  Environment setup is one the tasks that requires knowledge of various softwares, testers usually find it as one of the challenging tasks.
7. Performance Testing: Identifying Performance Test Scenarios, creating of Test Data required for performance testing and analyzing reports are the most challenging part of Performance testing.  In fact creation of performance test script is the easier among all activates performed during performance testing.
8. Metrics: Metrics becomes a challenge when goals of a particular metric is not defined and understood during initial stage of Software Test Life Cycle.  E.g.:- Consider you want to create metrics on Test Case Creation Efficiency, consider this metric provides details on the number of test cases created per day and number of review comments provided by reviewer. Incase there was no goal defined or the testers were not aware of this metric or testers do not make a conscious effort against the metric goals then the end result will be an ir-reversible and metrics that reflects badly on testing team/testers.
9. Unavailability of right Tools: Unavailability of right tools poses a great challenge for testing team.  Availability of right tools again depends on the project budget availability and funding.  Tools for Test Case creation and execution, Defect management, test automation , version control etc.,  For e.g.:- Test Cases and defects can be written and maintained in spread sheets as well as Test Management softwares like QTP or Clear Quest but think of the additional effort required and challenges you will face in using spread sheet Vs Test Management software.  Usage of right tools helps testers to reduce the time required to perform their tasks.
10. Team at Multi location:  If Business Analysts and development teams are located in locations different than the time zone of testing team.  Testers will get a very little time to discuss with their onsite counter parts or with other teams or will have to work extended hours to get clarifications or attend meetings.  Difference in time zone can lead to wait time.  Incase development team is at different location in different time zone and testers are unable to proceed with testing due to showstopper defect then they lose entire day as there is nobody from development team at the same location to quickly fix the Critical/show stopper issue and provide a new build so that testers can resume with testing.  Remember one day lost in this scenario is cutting into the test schedule.
About Guest Author:  John Mathews
John Mathews is from Kerala (India), he has 12+ years of experience in IT industry.  He has 4+ years of experience in Software Test management, estimation and automation.  We thank John for this guest article.

No comments:

Post a Comment