Various Types of Software Testing

Acceptance Testing:

Testing to verify a product meets customer specified requirements. A customer usually does this type of testing on a product that is developed externally.

By performing acceptance tests on an application the Customers/Clients will deduce how the application will perform in production. There are also legal and contractual requirements for acceptance of the system.

Alpha Testing:

This test is the first stage of testing and will be performed amongst the teams (developer and QA teams). Unit testing, integration testing and system testing when combined are known as alpha testing. During this phase, the following will be tested in the application:

  • Spelling Mistakes
  • Broken Links
  • Cloudy Directions
  • The Application will be tested on machines with the lowest specification to test loading times and any latency problems.

This is a formal testing performed by the end-users at development site. This is the previous stage to Beta Testing.

Accessibility or 508 Compliance Testing:

This is a subset of usability testing, verifying the software product is accessible to the users under consideration having disabilities (deaf, blind, mentally disabled etc.). Accessibility evaluation is more formalized than usability testing generally. The end goal, in both usability and accessibility, is to discover how easily people can use a web site and feed that information back into improving future designs and implementations.

Ad Hoc Testing:

This is a non-methodical approach where testing is performed, in general, without planning and documentation. Here the tester tries to ‘break’ the system by randomly trying the system’s functionality. This includes negative testing as well. See Monkey Testing

Aging Testing:

This is a type of performance testing that is carried out by running the software for longer duration like weeks or months and check its performance variation (any sign of degradation). This is also called as Longevity or Soak Testing.

Agile Testing:

Testing practice for projects using agile methodologies, treating development as the customer of testing and emphasizing a test-first design paradigm.

API Testing:

Each of the software’s APIs are tested as per the APIs specification individually or pipelining the APIs to complete a functionality. This can be performed as White-Box or Black-Box Unit Testing.

Automated Testing:

  • Testing employing software tools which execute tests without manual intervention. Can be applied in GUI, performance, API, etc. testing.
  • The use of software to control the execution of tests, the comparison of actual outcomes to predicted outcomes, the setting up of test preconditions, and other test control and test reporting functions.

Blog at

Up ↑

%d bloggers like this: