Software Testing Types TrainingVideo 1: IntroductionWelcome to Exforsys.com Self-Study Presentation on ad hoc testing
In this presentation, you will learn various aspects of ad hoc testing such as its characteristics, scenarios in which ad hoc testing is not recommended, ad hoc testing advantages and disadvantages.
Let me begin with by explaining What Ad-Hoc Testing is? Ad-hoc testing is a random unscripted software testing method. With the help of Ad-hoc testing you can effectively and efficiently test a given product.Often, people confuse it with the exploratory, negative and monkey testing. In the domain of software testing, the word “ad-hoc” means that the test is for a particular purpose at hand only. You cannot use the same test another time. It is almost like a “single-use” test.
I will now share few important characteristics of ad-hoc testing.We already know that Ad-hoc testing is a random and unscripted test which implies that the test is performed without a formal test plan, procedures or documentation of results. Ad-hoc testing is also known as free hand testing.Incidentally, these characters of ad-hoc testing coincide with those of monkey and exploratory testing.However, you must remember that Ad-hoc testing is generally performed only once unless there are some defects. If you find a defect, the action plan that you create depends on the kind of defects found and the frequency of occurrence. You can also revise the regular and scripted testing plan after finding those defects.
To conduct ad-hoc test, you need to have the knowledge and skills about the system. In addition, you will have freedom to proceed as necessary. However, you need to improvise the test to find additional bugs.It is a functional test as the tester attempts to “break” open the system’s functionality.During 1990’s, ad-hoc testing experienced a bad reputation, for people presumed that, it was a careless way of testing. Testing professionals started naming their random and unscripted testing method as exploratory testing. However, in exploratory testing, the next test will rely on the result of the just completed test but not so in the case of ad hoc testing.In essence, ad-hoc testing acts as an improvisation on a test procedure as the test progresses based on the needs and requirements. You can conduct an ad-hoc test as an exploratory test just once unless you find out defects in the software. However, supporters of exploratory test may not agree to this.
Ad-hoc testing as we all know is a unique test with its own inherent strengths and merits. Often one tends to think if ad-hoc testing fits into any of the SDLC stages.We are aware of the fact that there is a planned test during the different stages of the development cycle. These test are effective in detecting routine or expected errors as well. However, ad-hoc testing system may not be appropriate in certain stages of the software developmental cycle. It is generally suitable during early stages of the development phase.Ad-hoc testing is a random and unscripted test which runs just once and it does not require documentation of results. However, this could be a big bottleneck if not used properly.In practice, acceptance and release testing, usually performed after product verifications, is one of the means to validate that the software meets all the agreed requirements or specification. Ad-hoc testing is notappropriate during product verification and release phases.
Let us now reviewfew situations where conducting ad-hoc testing is inappropriate:Ad-hoc testing may not be an appropriate testing method in cases when there is a test failure or when documentation is necessary. When there is a need for authorizing a re-test, repairs or any other corrective measures to make the product acceptable to end users, then ad-hoc testing may not be useful. Alternatively, when the re-test needs a repetition, then ad-hoc testing may not be applicable.Testing, however, will be limited by the designed testing scope and procedure. If the technical personnel or engineers see the probability or potential of a defect, a simple ad hoc test can be conducted so that a probable or potential problem is verified and acted upon without any delay.
Advantages of Ad Hoc Testing Like other software testing methods, even ad-hoc testing is an important test that is used at different stages of software development. During the early phase of software development, this test allows the developers to conduct random and cost effective tests, which would eventually help them to comprehend the program in an effective manner. During later stages, the inputs and results accumulated from the earlier tests would assist in more advanced scheduling and setting priorities. The critical information and data gathered during the testing phase acts as a great guide in predicting potential problems at the later stage of the development and during the acceptance testing.Ad-hoc testing could be very effective when used with other testing methods. Ad-hoc testing will allow a skilled and knowledgeable tester to conserve more time in the actual testing process than the preparation prior to the test. In essence, the tester will have additional time to improvise the process, thus making the testing experience more mentally stimulating than that with scripted testing. The results obtained during the testing will help the testing team learn and understand more about the software system being developed. It will also help the tester to further improve the scripted testing method as new information and details are incorporated into the test plan.
Advantages of Ad Hoc Testing (contd.,)One of the most significant benefits of using this test is its ability to provide very quick tests because of much lower levels of preparation time needed prior to testing. Unduly longer time for conducting a test could eventually cause unacceptable delays in the production of development of software products. However, ad-hoc testing has the ability to provide quicker results when compared to other methods.There is no need to document or summarize the results of the test which will eventually help the testers to concentrate on the test without any disturbance. The tester can collate or accumulate more valuable information about the software being developed. It is also possible to define robust preventive measures to prevent future errors.
Disadvantages of Ad Hoc TestingLack of documentation seems to be one of the biggest pitfalls of ad-hoc testing. During the testing procedure, you can find a number of useful information about the software. This hitherto new information will be known to a select few testers unless they decide to share the information with others who are involved in the testing process.Absence of documentation means lack of availability of sensitive information to testers who may be unaware of previous errors. If proper documentations are made available to the testing team, they would never repeat the same errors or mistakes those were committed previously. Documentation also acts as very good and useful references with an ability to guide the testers in an effective manner to achieve better results.
Disadvantages of Ad Hoc Testing (contd.,)An ad-hoc test provides a one-time result without any documentation to back the results. Software management team often considers this test as a wasteful activity as it does not provide information on how the testing team spent its time towards testing activities. Testers, who work for the testing activities are highly skilled, better paid and are knowledgeable in the testing domain. Thus, the management team that hires such skilled people is always concerned about how they could keep their cost of operations down and at a reasonable level by carefully balancing various quality, productivity and cost factors.A skilled tester would be able to design and perform tests to find out possible errors or addresses some critical concerns. In some cases, a number of quality controls may not be covered in the designed test plan. This may eventually lead to potential problems undetected until the end of the testing. To summarize, ad-hoc testing is quick, inexpensive, and cost-effective during the early phase of the developmental cycle. Ad-hoc testing may prove to be an adequate plan that ensures both quality and customer satisfaction.
This concludes the examination of the ad hoc software testing type. In the next presentation you will learn about Acceptance Testing.
www.exforsys.comAd Hoc TestingAd-Hoc Testing What is Ad-Hoc Testing? Ad-Hoc testing characteristics Does Ad-Hoc Testing fit in the SDLC? When Ad-Hoc testing is inappropriate? Advantages of Ad-Hoc Testing Disadvantages of Ad-Hoc Testing
• What is Ad-Hoc Testing?– Ad-hoc testing is a random unscripted softwaretesting method.– It is like a “single-use” test.– It is sometime mixed up as exploratory, negativeand monkey testing.– However, the word “ad-hoc testing” means thatthe test is for a particular purpose at hand only.www.exforsys.comAd Hoc Testing
• Ad-hoc Testing Characteristics– Ad-hoc is performed without a formal testplan, procedures or documentation of results.– Ad-hoc testing is performed only once unlessthere are some defects.– Action plan depends on the kind of defects foundand the frequency of occurrence.www.exforsys.comAd Hoc Testing
• Ad-hoc Testing Characteristics (contd.,)– Ad-hoc is performed based on knowledge and skillabout the system being tested.– Testers are allowed to improvise the test to findadditional bugs.– Ad-hoc testing is a functional test that attempts to“break” open the system’s functionality.– In exploratory testing, the next test will rely on theresult of the just completed test but not so in the caseof ad hoc testing which is conducted only once.www.exforsys.comAd Hoc Testing
• Does Ad Hoc Testing fit in the SDLC?– Ad-hoc testing may not be appropriate in certainstages of the software developmental cycle.– Ad-hoc testing does not require documentation ofresults.– Ad-hoc testing is not appropriate duringacceptance and release testing phases.www.exforsys.comAd Hoc Testing
• When ad-hoc testing is inappropriate?Ad-hoc testing is not recommended• when there is a test failure .• when documentation is necessary.• when there is a need for authorizing a re-test.• When repairs or any other corrective measures arebeing performed on the product.www.exforsys.comAd Hoc Testing
• Advantages of Ad Hoc Testing– Suitable for conducting random and cost effectivetest during early phase of software development.– Tester can conserve more time.– Testers are allowed to improve the testingprocess.– Ad-hoc test can help further improve the scriptedtesting method.www.exforsys.comAd Hoc Testing
• Advantages of Ad Hoc Testing (contd.,)– Requires lesser level of preparation time.– Ad-hoc testing provides quick result.– Testers can concentrate on testing as there is noneed of documentation and summarize thefindings.– Possibility to define robust preventive measures.www.exforsys.comAd Hoc Testing
• Disadvantages of Ad Hoc Testing– Lack of documentation– Lack of availability of sensitive information– Testers are unaware of previous errors– No useful reference to guide the testerswww.exforsys.comAd Hoc Testing
• Disadvantages of Ad Hoc Testing (contd.,)– Does not provide information on how the testingteam spent its time towards testing activities.– Requires a qualified and skilled tester to performadditional quality control test resulting inincreased operations cost.– Potential problems could remain undetected.– Not suitable for final stage testing.www.exforsys.comAd Hoc Testing
Self-Study Online Trainingwww.exforsys.comwww.exforsys.comAd Hoc Testing