How do experience based techniques differ from specification based techniques?

How do experience based techniques differ from specification based techniques?

How do experience based techniques differ from specification based techniques?

The software testing is done using the different testing techniques like:

  • white box testing or structure based testing technique
  • black box testing or specification based testing technique
  • experience based testing technique

The experience based testing technique is based on the skill and experience of the testers, experts, users etc. It is conducted in an Ad-hoc manner because proper specifications are not available to test the applications. Here the tester depends on the past experiences with same technologies. The tester as per his experience focuses on the important areas of the software like- the areas mostly used by the customer or the areas most likely to be failed. Experience some based techniques complement with specification based and structure or design based techniques. This technique is used for low risk system. This kind of testing is done even when there is no specifications or have inadequate specification list.

The different types of experience based techniques are:

  • Error guessing techniques
  • Exploratory Techniques
  • Checklist based testing
  • Fault Attack Testing

Experience of the expected use of software, its environment, possible defects etc is used by the tester which is required in performing experience based testing. Some of the expected situations to use experience based techniques are

How do experience based techniques differ from specification based techniques?

  • Non –availability of requirements and specifications.
  • Limited knowledge of software product
  • Inadequate specification
  • Restricted amount of time

All the members in the IT team can involve in experience based testing. Different

people will contribute their experiences in the field. For example an end-user will bring

business and process knowledge and the tester uses all the testing skills.

For time being the testers may be allowed and given the test beyond the input defined steps and projected results. If these test conditions identified succeed in detecting defects or possible errors, they may be incorporated to predefined tests. At the onset of exploratory testing, testers are responsible for confirming and executing the required setup activities of these tests while conducting the test the testers gain the information about the design, test and execute. Accordingly the testers record the information gained regarding the application as well as any defect investigation that has to be done. If the testers feel that another set of testers need to repeat the defect tests that they had done they also capture the inputs, test conditions and test events.

Check your understanding:

  1. Describe the different techniques of experience based testing technique

Back to top button

There is a famous quote by Albert Einstein “Information is not knowledge. The only source of knowledge is experience. You need the experience to gain wisdom.” This quote is apt when we think of the importance of experience while coming up with test cases. In this tutorial, we will talk about experience based testing techniques.

  • What is experience based testing?
  • What are the types of experience based test technique?
  • Common pitfalls of experience based testing.

What is Experience Based Test technique?

In previous articles, we have gone through blackbox testing techniques like equivalence partitioning and boundary value analysis. These approaches are more structured, and there is a clear approach defined to apply these techniques. If multiple testers apply the same technique on a requirement, then they will come up with a similar set of test cases.

When applying experience based test techniques, the test cases are derived from the tester’s skill and intuition. Their past works with similar applications and technologies also play a role in this. These techniques can be helpful in looking out for tests that were not easily identified by other structured ones. Depending on the tester’s approach, it may achieve widely varying degrees of coverage and effectiveness. Coverage can be difficult to assess and may not be measurable with these techniques.

When should we use experience based technique?

  • Requirements and specifications are not available.
  • Requirements are inadequate.
  • Limited knowledge of the software product.
  • Time constraints to follow a structured approach.

Once the structured testing is complete, there can be an opportunity to use this testing technique. It will ensure the testing of important and error-prone areas of applications.

Intuition too, play a key role in this technique. For example, consider your favorite web or mobile app that you use – E.g. Amazon. You did not get any requirements or a document on how to use a functionality. Yet, most of you are aware of the features and functionalities that they offer. How did you do that? By exploring the application on your own. This is a classic example of knowing the application by using it over time.

A similar thought applies to a tester as well. It’s just that they are trained to look for finer details and to look out for defects. Over a period, they know the areas that can be buggy.

For example, if you test an eCommerce application like Amazon, there are some scenarios that a tester would know from his experience that a casual user might not try such as:

  • Enter a negative value in the quantity field.
  • Order multiple products or quantities, apply a discount code on the cart value, and then return some quantity. E.g. if you bought 3 quantities at 100 each and then applied a 10% discount your final amount is 270. When you return one quantity, you should get 90 refunded and not 100.
  • Also, try loging in to multiple sessions and see if cart gets updated correctly.
  • Add a product in cart and make it out of stock from the backend.
  • Add product to cart, enter payment details, and just before clicking place order make it out of stock from the backend.

These types of scenarios (and many more) come from experience, and they would apply to most of the ecommerce applications.

Scenarios to avoid

While we can always use this testing along with the structured techniques, in some cases, we cannot use it stand alone. At times there are contractual requirements where we need to present test coverage and specific test matrices. Experience based techniques cannot measure the test coverage. Hence, we should avoid them in such cases.

Types of experienced based testing

How do experience based techniques differ from specification based techniques?

Error Guessing – Tester applies his experience to guess the areas in the application that are prone to error.

Exploratory Testing – As the name implies, the tester explores the application, and uses his experience to navigate thru different functionalities.

Checklist Based Testing– In this technique, we apply a tester's experience to create a checklist of different functionalities and use cases for testing.

Common Pitfalls

As the name suggests, this testing technique is solely based on the experience of the tester. The quality of testing depends on the tester, and it would differ from person to person.

This approach might result in a very poorly tested application if the experience of the tester is not enough and can lead to bugs in the application.

In some cases, the tester has the experience but the domain is new. E.g. the application is in a banking domain, but the tester has worked on eCommerce applications. In such cases, the experience based testing would not work as well.

Hence, it’s extremely important that we use this technique when a tester has been working in the same domain or on the application for a long time.

So, to summarize, experience based testing is really useful to come up with test cases. In next tutorials we will dig deep into different types of these techniques and learn how we can apply these in our projects.

How to experience

How do experience-based techniques differ from specification-based techniques?.
They depend on the tester's understanding of the way the system is structured rather than on a documented record of what the system should do..
They depend on having older testers rather than younger testers..

How to experience

How do experience-based techniques differ from specification-based techniques?.
They depend on having older testers rather than younger testers..
They depend on an individual's personal view rather than on a documented record of what the system should do..

What is experience

Experience-based techniques are based on the tester's experience with testing, development, similar applications, the same application in previous releases, and the domain itself. The tester brings all their knowledge to bear when designing the test cases.

Why are both specification

They are used both to measure coverage and to design tests to increase coverage.