Example: You are going to test a web application. Client saying us to follow the waterfall model for developing the application? Now my question is what are all the testing you have conducted for successful delivery of product? Then, For Waterfall model,we used to test adhoc kind of test...or how it depends..or we do adhoc testing for all kinds of model...

  • Hi Mahesh. I'm not sure this question is currently in a state that we can truly answer. What is the goal you're trying to accomplish? What is the background for the question (what prompted it)? I think this needs more information before it can be truly helpful to both you and future visitors. – corsiKa Oct 21 '14 at 20:09
  • Actually,it was my general question? How do we choose models and types for testing the product? for eg: if we choose waterfall model for particular application, what are all the testing (types) we conduct....... – MAHESH S Oct 27 '14 at 10:39

How many testing types are there according to you?

What exactly do you mean when you say adhoc testing? Is it that you randomly click some element of the screen and see what happens? Or you randomly choose a module and test it?

You can do any type of testing in any development model as long as it suit the context. You see testing is always context dependent. The answer to most questions will always be it depends. Just follow your heart. If it says adhoc suits waterfall, then go ahead with it. If it doesn't work out you will learn from it and adopt another method!!!


Well, in my experience, choosing 1 'type' of testing should never be considered thorough testing. You should always ensure that you have a formalized testing (which ad hoc would not fall under) to ensure that you have full test coverage. This will typically be executed along side some ad hoc testing in order to discover defects quicker.

For example, with a web based application:

Generic Test plan: 
Log in 
Create User with valid Username and Password without User Creation Permissions 
Log out 
Log in with new User 
Verify user can not create a new User

Actual test execution during initial smoke testing and regression should be, in my opinion blended with ad-hoc methods:

Attempt Login with invalid credentials
Login with valid credentials
Attempt to create user with invalid Username
Attempt to create user with invalid Password
Attempt to create user with invalid username and password
Create user with valid username and password
Log out
Log in with new user
Verify user can not create a new User
Attempt to navigate directly to the URL for new user creation
Attempt to post the HTTP Headers for new user creation to the server directly

So, with this, especially during smoke testing, you are verifying as much as possible as quickly as possible in order to try and find as many defects as possible as quickly as possible. This will assist in expediting defect resolution and overall speed up the DLC by discovering the majority of the defects early on.

After the smoke testing, I will follow the test cases as closely as possible to ensure that the application is tested as desired and then when done with the written test cases I would resume to do ad hoc testing based on the test cases with the types of verification above.


Generally Testing type can't live independently of model, because its the type of software model which delivers the product to testing team in some format may be whole product or some module or first few independent module and then integrated modules as a complete product.

Therefore you need to adopt the testing type based on the delivery of the product. Now adhoc testing is again a type of testing which can be performed with any kind of model because its a random selection of testing areas.

Not the answer you're looking for? Browse other questions tagged or ask your own question.