Logo

Navigation
  • Home
  • Services
    • ERP Solutions
    • Implementation Solutions
    • Support and Maintenance Solutions
    • Custom Solutions
    • Upgrade Solutions
    • Training and Mentoring
    • Web Solutions
    • Production Support
    • Architecture Designing
    • Independent Validation and Testing Services
    • Infrastructure Management
  • Expertise
    • Microsoft Development Expertise
    • Mobile Development
    • SQL Server Database and BI
    • SAP BI, SAP Hana, SAP BO
    • Oracle and BI
    • Oracle RAC
  • Technical Training
    • Learn Data Management
      • Business Intelligence
      • Data Mining
      • Data Modeling
      • Data Warehousing
      • Disaster Recovery
    • Learn Concepts
      • Application Development
      • Client Server
      • Cloud Computing Tutorials
      • Cluster Computing
      • CRM Tutorial
      • EDI Tutorials
      • ERP Tutorials
      • NLP
      • OOPS
      • Concepts
      • SOA Tutorial
      • Supply Chain
      • Technology Trends
      • UML
      • Virtualization
      • Web 2.0
    • Learn Java
      • JavaScript Tutorial
      • JSP Tutorials
      • J2EE
    • Learn Microsoft
      • MSAS
      • ASP.NET
      • ASP.NET 2.0
      • C Sharp
      • MS Project Training
      • Silverlight
      • SQL Server 2005
      • VB.NET 2005
    • Learn Networking
      • Networking
      • Wireless
    • Learn Oracle
      • Oracle 10g
      • PL/SQL
      • Oracle 11g Tutorials
      • Oracle 9i
      • Oracle Apps
    • Learn Programming
      • Ajax Tutorial
      • C Language
      • C++ Tutorials
      • CSS Tutorial
      • CSS3 Tutorial
      • JavaScript Tutorial
      • jQuery Tutorial
      • MainFrame
      • PHP Tutorial
      • VBScript Tutorial
      • XML Tutorial
    • Learn Software Testing
      • Software Testing Types
      • SQA
      • Testing
  • Career Training
    • Career Improvement
      • Career Articles
      • Certification Articles
      • Conflict Management
      • Core Skills
      • Decision Making
      • Entrepreneurship
      • Goal Setting
      • Life Skills
      • Performance Development
      • Personal Excellence
      • Personality Development
      • Problem Solving
      • Relationship Management
      • Self Confidence
      • Self Supervision
      • Social Networking
      • Strategic Planning
      • Time Management
    • Education Help
      • Career Tracks
      • Essay Writing
      • Internship Tips
      • Online Education
      • Scholarships
      • Student Loans
    • Managerial Skills
      • Business Communication
      • Business Networking
      • Facilitator Skills
      • Managing Change
      • Marketing Management
      • Meeting Management
      • Process Management
      • Project Management
      • Project Management Life Cycle
      • Project Management Process
      • Project Risk Management
      • Relationship Management
      • Task Management
      • Team Building
      • Virtual Team Management
    • Essential Life Skills
      • Anger Management
      • Anxiety Management
      • Attitude Development
      • Coaching and Mentoring
      • Emotional Intelligence
      • Stress Management
      • Positive Thinking
    • Communication Skills
      • Conversation Skills
      • Cross Culture Competence
      • English Vocabulary
      • Listening Skills
      • Public Speaking Skills
      • Questioning Skills
    • Soft Skills
      • Assertive Skills
      • Influence Skills
      • Leadership Skills
      • Memory Skills
      • People Skills
      • Presentation Skills
    • Finding a Job
      • Etiquette Tips
      • Group Discussions
      • HR Interviews
      • Interview Notes
      • Job Search Tips
      • Resume Tips
      • Sample Resumes
 

What is Ad Hoc Testing

By Chandra Vennapoosa | on March 24, 2011 |
Software Testing Types

What exactly is Ad Hoc Testing? When Will you use Ad Hoc Testing ?

Ad-hoc testing is an unscripted software testing method. 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. Thus, it has to be very effective and efficient.

The following characteristics will provide the real meaning of ad-hoc testing:

  1. Ad-hoc testing is a random and unscripted test, performed without a formal test plan, procedures or documentation of results. These characters of ad-hoc testing coincide with those of monkey and exploratory testing.
  2. You will need to perform this test 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.
  3. Ad-hoc testing is also known as free hand testing. To conduct this test, you just need to have the knowledge and skills about the system. In addition, the tester is at freedom to proceed as he or she feels necessary. However, the tester will need to improvise the test to find additional bugs.
  4. 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. Therefore, a group of professionals started to name their random and unscripted testing method as exploratory testing. The belief that ad-hoc and exploratory testing are similar is partly true. In exploratory testing, the next test will rely on the result of the just completed test.

If you conduct, a test only once in the series of different tests, then you can call it as ad-hoc test. In essence, ad-hoc testing acts as an improvisation on a test procedure. The test starts with a documented test procedure but introduces further improvisations as the test progresses based on the needs and requirements. Some people compare this test to classical jazz where you can still recognize the original track but the musical arrangement slowly introduces subtle variations to the original track. To summarize, 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.

Does Ad Hoc Testing fit in the SDLC?

Ad-hoc testing is a unique test with its own inherent strengths and merits. However, this testing system may not be appropriate in certain stages of the software developmental cycle. A random and unscripted test runs just once it does not require documentation of results. However, this could be a big bottleneck if not used properly.

Here are some situations where 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.

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. To perform an acceptance test, the test plan should ensure that all the specified needs and requirements have been checked and validated. To ensure that checks and validations are conducted, testers should provide documentation of test plan as well as the corresponding proofs related to every requirement those are aligned with the corresponding results.

The customers or their representatives do not necessarily have to be present during the test itself but they need the documents to act on the delivery and payment of the product. An acceptance test may be conducted along with the client or customer’s presence. Depending on the pre-development agreements, acceptance may also be performed at the client’s site.

Except for the above-mentioned cases, ad-hoc testing is quite appropriate to use in any stage of the software development cycle. There is a planned test during the different stages of the development cycle. They are effective in detecting routine or expected errors as well. 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 without delay, unlike the other tests which require a test plan. So, 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.

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. This is very beneficial to the tester because he or she 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 Testing

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

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.

Whatever the advantages or demerits of ad-hoc testing are, you still need to hire a qualified and skilled tester to perform the testing. 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. Skilled testers will have the ability to anticipate all potential problems and obstacles during the testing phase.

An effective management team always requires careful balancing among various quality, productivity and cost factors. It is very critical to effectively utilize the human and technological resources by planning for optimum methods of developing the product. To conduct a result oriented test, you will need a subtle combination of appropriate methods based on effectiveness and cost.

Those who are skeptical of ad-hoc testing as a wasteful activity may need to find further proof of performance of their testers aside from collating recordings of test results. In fact, there may be other ways of measuring and quantifying performance, even creative and intelligent ones. Not all programs are created equal nor are they similar. Some of them are very complex while others are very simple.

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.

« « Common Decision Making Mistakes
Oracle SQL*Loader – Working with Discarded and Rejected Records » »

Author Description

Chandra Vennapoosa

Chandra Vennapoosa, B.S Arch Graduate, Managing Director - Exforsys Inc, Founder of exforsys.com and geekinterview.com. Chandra's mission is "to provide quality career coaching and interview advice for aspiring candidates". She is an avid writer and is also very passionate to help others become professional freelancers. In addition to several online trainings, she has authored the popular book "How to Become a Successful Freelancer"

Free Training

RSSSubscribe 394 Followers
  • Popular
  • Recent
  • What is Monkey Testing

    December 17, 2011 - 0 Comment
  • What is White Box Testing

    February 22, 2012 - 0 Comment
  • What is Comparison Testing

    June 4, 2011 - 0 Comment
  • What is Mutation Testing

    December 21, 2011 - 0 Comment
  • What is Database Testing

    July 26, 2011 - 0 Comment
  • What is Exploratory Testing

    September 12, 2011 - 0 Comment
  • What is Negative Testing

    December 27, 2011 - 0 Comment
  • What is Data Recovery Testing

    January 9, 2012 - 0 Comment
  • What is Alpha Testing

    May 13, 2011 - 0 Comment
  • What is Performance Testing

    January 1, 2012 - 0 Comment
  • What is White Box Testing

    February 22, 2012 - 0 Comment
  • What is Usability Testing

    February 16, 2012 - 0 Comment
  • What is Stress Testing

    February 15, 2012 - 0 Comment
  • What is Static Testing

    February 10, 2012 - 0 Comment
  • What is Smoke Testing

    February 6, 2012 - 0 Comment
  • What is Security Testing

    January 27, 2012 - 0 Comment
  • What is Sanity Testing

    January 23, 2012 - 0 Comment
  • What is Regression Testing

    January 11, 2012 - 0 Comment
  • What is Data Recovery Testing

    January 9, 2012 - 0 Comment
  • What is Performance Testing

    January 1, 2012 - 0 Comment

Exforsys e-Newsletter

ebook
 

Related Articles

  • What is White Box Testing
  • What is Usability Testing
  • What is Stress Testing
  • What is Static Testing
  • What is Smoke Testing

Latest Articles

  • Project Management Techniques
  • Product Development Best Practices
  • Importance of Quality Data Management
  • How to Maximize Quality Assurance
  • Utilizing Effective Quality Assurance Strategies
  • Sitemap
  • Privacy Policy
  • DMCA
  • Trademark Information
  • Contact Us
© 2023. All Rights Reserved.IT Training and Consulting
This website uses cookies to improve your experience. We'll assume you're ok with this, but you can opt-out if you wish.AcceptReject Read More
Privacy & Cookies Policy

Privacy Overview

This website uses cookies to improve your experience while you navigate through the website. Out of these, the cookies that are categorized as necessary are stored on your browser as they are essential for the working of basic functionalities of the website. We also use third-party cookies that help us analyze and understand how you use this website. These cookies will be stored in your browser only with your consent. You also have the option to opt-out of these cookies. But opting out of some of these cookies may affect your browsing experience.
Necessary
Always Enabled
Necessary cookies are absolutely essential for the website to function properly. This category only includes cookies that ensures basic functionalities and security features of the website. These cookies do not store any personal information.
Non-necessary
Any cookies that may not be particularly necessary for the website to function and is used specifically to collect user personal data via analytics, ads, other embedded contents are termed as non-necessary cookies. It is mandatory to procure user consent prior to running these cookies on your website.
SAVE & ACCEPT