facebook twitter youtube
by Amit Gupta - 3 comments

We generally use most of the testing strategy described here. But we are not aware with their name. So know which testing you use and impress your seniors.

This area is protected to registered users only.

Module or unit testing – when programmer/developer checks his program himself. It includes boundary condition check, program reviews, error handling, formal verification, all permutation of input/output data etc.

Integration Testing – Testing after integrating all or some modules. It can adopt approach of

  • Bottom –up – Test smaller parts first è merge them è test large part è merge other smaller part & test again and so on.
  • Top –down – Take bigger part & test it. Add subsequent part and test it until whole module is tested.
  • Or both (Sandwich Testing)
  • Big Bang – Form a large part from adding similar and smaller parts together. Test it.

The main advantage of the Bottom-Up approach is that bugs are more easily found. With Top-Down, it is easier to find a missing branch link.

Smoke Testing – A quick-and-dirty test that the major functions of a piece of software work without bothering with finer details. Like a check list.

Sanity Testing –just opposite of smoke testing, It asks for deep testing. It include Regression testing.

  • Regression Testing – break & test. It requires after integration or sanity testing to find out the bug and repair it.

Acceptance Testing

  • Pilot testing – Testing in production like environment. Simulation.
  • Parallel testing
  • Alpha test – Tested by customer under the supervision of the developer at the developer’s site
  • Beta test – Tested by customer at his or her own site without the developer being present

Functional testing – Testing functionality of a system. It includes all tests other than performance test.

Performance Testing – run-time performance of software

  • Stress test – checked to see how well it deals with abnormal resource demands
  • Volume/load test – test with mass amount of input/requests
  • Configuration test (hardware & software)
  • Compatibility – like testing a site on various browsers, or running software on many OS
  • Security tests – finding security hall, like prevention from SQL injection, Ajax bomb, cross site scripting etc.
  • Timing tests – whether system is able to respond properly with in defined time
  • Recovery tests – ability to recover from failures. Whether it can recover lost data. Whether it is persistent and crash safe.

Some other performance tests are

  • Environmental tests
  • Quality tests
  • Maintenance tests
  • Documentation tests
  • Human factors test
  • Benchmark test

Black Box Testing – Testing, conducted by external entity, without having any knowledge of system/application

White Box Testing – Testing by external entity who has list of test cases or has prior knowledge of system/application

Amit Gupta

Hey! this is Amit Gupta (amty). By profession, I am a Software Eng. And teaching is my passion. Sometimes I am a teacher, as you can see many technical tutorials on my site, sometimes I am a poet, And sometime just a friend of friends...

Leave a Reply


  • Regression Testing //07 Apr 2012

    I reviewed the above article and fill very good with the article information. Can I expect more about Application Security Testing with additional features??
    Have a great day!

  • Nivedita //10 Apr 2012

    Hi Amit,

    This article is really helpful for the developers as well as for testers.
    I think you should write some article on mem-cache. I find it too difficult to understand.

  • Amit Gupta //08 Feb 2013

    Security testing is conducted by people who have no knowledge or less knowledge about application. It includes : URL testing, resource visibility testing, malicious code injection testing through available inputs etc.

    Do you want me to write separate and detailed article for this?