Skip to main content

Exploratory Testing in Agile

Exploratory testing plays an important role in Agile environment due to limited time available and limited details of the user stories. To get the best results out of exploratory testing, it should be combined with other experience based testing techniques.
Some of the important features of exploratory testing in agile are:

  • Test design and execution take place at the same time guided by prepared Test Charter
  • The result of most recent tests are used to guide the next tests.
  • As mentioned earlier, it is combined with other experienced based testing in order to get the best results
  • It is a time boxed testing session and test charter provides the test conditions to cover. 
Test Charter

Test Charter is a statement of test objectives and test ideas (how to test) and mainly used in carrying out the exploratory testing. Below are some of the details included in preparing Test Charter:
  • Actor : the expected user of the system
  • Setup : the test environment set up needed to carry out exploratory testing
  • Data: test data to be used for testing
  • Priority: determines the importance of the charter based on the user story's priority and risk level associated with it.
  • Purpose: all the test conditions (what user is trying to achieve) 
  • Reference: all the related information sources
  • Activities: a list of ideas what to test
  • Notes: evaluation of the correct results by comparing actual and expected behavior, also known as oracle notes
  • Variations: alternative actions to complement the ideas given in activities 
Exploratory testing is managed by session based test which lasts from 1-2 hours (60-120 mins) uninterrupted testing. A typical session includes:
  1. Survey session which included the learning of how the system works.
  2. Analysis session includes the functionality and characteristics of the system under test
  3. Deep coverage session would have all the border cases and scenarios to have maximum coverage. 
Tester should have deep knowledge and understanding of the system. He can use heuristic guide to cover boundaries, functionalities, variations and interruptions. It is equally important to document the process like Test coverage, Notes, Risks, Issues and Actual behavior. 
This information would be used by stakeholders to understand the status of the tests performed during exploratory testing and also, if there were issues found during the test execution then this information would be used as a guide to understand the issue and help in replicating it. 

This is a summary of how exploratory testing works in Agile. Agile extension syllabus was referred before writing this article. 

Comments

Popular posts from this blog

Remove Blanks from Excel Sheet when Excel doesn't recognize field as blank

This is one of the tricks which always helped me in removing the blank fields from an Excel sheet especially when the values are copied from other sources. I have added screenshots of a sample data to show you all the actions step by step. Here are the steps to remove blanks by using one of the special functions in excel: 1. Select your data-set (Select the column which has blank values) 2. Press F5 3. Select "Special". You will see below screen: 4.Select Blanks and click Ok as shown 5. All the blank fields are now selected, you can proceed and delete all of them by selecting "delete" from the home menu.   Here is the final result: I hope this was helpful. Share this with your colleagues and friends to help them out.

All About Continuous Integration in Agile

In my last post,  Benefits of Early and Frequent Feedback in Agile development  I mentioned how Continuous Integration helps in early and frequent feedback. In this post, we are going to go deeper into the concept and see what exactly it does, how it does and its benefits and challenges. Continuous Integration is an automated system which wraps configuration management, software build, deployment and testing into one repeatable process. The best practice is to run the whole set of set into the new build (with all the new code check ins) at least once a day. This gives a feedback on the  build quality. If all the automated tests passed then the build can be used to perform deeper testing. Below are some of the activities carried out by CI: Code analysis Compilation of code and generating an executable file Perform Unit testing Deploying the build onto the testing environment Performing integration testing Generating reports In our project, nightly build and...

The Agile Manifesto Values and Principles

Agile manifesto refers to the set of rules or values used in an agile project. It contains mainly 4 values: Individual and Interactions Working software Customer collaboration Responding to change Over (in traditional project): Processes and Tools Comprehensive documentation Contract negotiation Following a plan Let's discuss these four values in details: Individual and Interactions : Agile development follows a whole team approach and is very people centered. Development team builds software through communication and interaction among different teams and people instead of depending on tools and processes. Individual team member offers a specific skill set and whole team involves in planning the development and testing strategies.  Working software : It is always beneficial to see the working software instead of heavy documentation. It also helps developers in getting early feedback from the clients which in turn cuts down the cost of accommodating c...