Skip to main content

Posts

Showing posts with the label Quality

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 ca...

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...

Skills of an Agile Tester

This post is referred from ISTQB Agile certification syllabus plus I have included my own experience working in Agile environment as a Tester. Let's discuss about the skills first. I have categorized skills in two categories:  Technical Skills  Interpersonal Skills Technical skills include: Test automation : It is crucial to have at least a basic understanding of automation and the tools which are used for automating. Automation not only saves a lot of time and efforts but also, gives you quick defects on the newest build.  TDD (Test Driven Development) : This is used to develop code which is mainly guided by the automation. In other words, we call it "test-first" approach, so the test is written first and then code follows.  ATDD (Acceptance Test Driven Development): As the same suggests, this defines the acceptance criteria and helps developers, testers and business people to understand what they need to get the expected results. This approach incl...

Negative Testing and Writing negative test cases

Negative testing or destructive testing tests what a software is not made to do or boundary testing which can break the software functionality. In other words, what "Should not" defined under the requirements. Let's take an example, if a text box under the label "Name" can take only alphabets then when a numeric or special character is entered, it should be able to handle that properly by throwing an exception which could be an error message on the screen or a pop-up box saying “only alphabets allowed”. Another example could be: an input box which can take numeric value range from 1-99, so giving 0 or 100 as input would be considered as negative testing. When we want to build a quality product, both positive and negative scenarios play an important role. Without negative testing, we would not be able to know what makes the application crash and its limitations. I am going to list down three main advantages of doing negative testing. Advantages of negativ...

How to write a detailed Bug report?

Welcome to Software Testing Techie Blog! Bug report sounds familiar, right? As testers, we all create one or more than one bug report in our everyday work but what mostly matters is how detailed do we create them? What details we put in and how other teams get benefit out of it. BUG!! I am going to share an example related to detailed bug report and how it affects the quality. Detailed bug report is one of the best gift you can give to your and also to development team. Let's see how: A detailed bug report should have 4 major things namely severity, steps to reproduce, expected result and actual result. There could be other fields depending on what defect tracking tool you are using for example, testing estimate, test cases reviewer etc. Consider an easy example where user logs into a website and found that home screen is distorted. So Let's define all above 4 major areas: 1. Severity: Since it is related to Home screen which is the most important part of ...

Testing is inevitable!

Welcome to Software Testing Techie Blog! Today I am going to write about something which we all observe but not pay enough attention to! Testing is something which is innate in all of us! Yes, we all are testing throughout our life :) The main reason could be the human behavior of not trusting anything. Remember the time when we were young and had a play guitar which was our favorite toy. How much testing was performed on it? We played with it until we broke it completely. Hilarious! Now observe a child when he is given anything to eat, he starts testing it by mashing it on the ground, looking at it number of times, beating it again and again and finally when he feels like it is good, he takes it in his mouth to eat. Testing is one of the most interesting fields, unlimited number of ways to test a particular software. But to enjoy testing, the only condition is to open up your mind and test. You will find that you are learning something new everyday and your job woul...