Thursday, May 28, 2009

Different Types of Testing for a product

In my view/experience..
Below are the different testing types done during the product validation phase.
Categories may again vary from product to product.
  1. Installation Testing
  2. Business case execution
  3. Backward Compatibility
  4. Migration
  5. Performance
  6. Security
  7. Multi byte
  8. HTTPS
  9. SSO
  10. High Availability
  11. Documentation
  12. Usability testing
  13. Stability and Robustness Testing

1. Installation Testing : 
  • For every product we have an installation guide. In the installation guide it specifies what kind of environment it supports.
  • Now check for the supported environment and make the combinations of it and then decide the best combination which covers many aspects of it.
  • Customer way of using it, may also be one of the major influencing factor while choosing the best combination for testing.
For  Example: 

Software might be as simple as Picasa or as complex as some Typical business application Software.

Picasa: Please by going  through the link(http://picasa.google.com/support/bin/answer.py?hl=en&answer=106563) we understand that Picasa can be installed on two OS environments. (Windows and Mac)
In This case the software is only dependent on OS.

But in case of typical Business application software's there might be dependency on the DB Server, Web Server, Driver, Browser etc.. along with OS.

In this case again the Combination list goes on increasing. 

Operating Systems: Windows(2003 Server, XP, Vista, Server 2008.. and all the latest releases), Linux (RHEL, Oracle Enterprise Linux)
Database Server: MS SQL Server (2000, 2005), Oracle(9i, 10g, 11i... latest releases), My SQL (5.0)
Drivers: OLEDB, JDBC
Browsers: IE6, IE7, IE8, Google Chrome, Mozilla FireFox,Apple Safari, SR Ware Iron etc.

While installation it is not that important that the browser should be part of your combination but while testing the software which is browser based, it is very important to test it in all the browsers if the software claims that it is Multi Browser compatible. As the implementation vary from mind to mind.

Sample Combination table:

Sl. No.
Operating System
Database
Connectivity
Web Server
1.
RHEL 4
Oracle 10g
JDBC
Apache 2.2.9
2.
RHEL 4
MySQL 5.0.67
JDBC
Apache 2.0.59
3.
MS Windows Vista SP 1 Business Edition
SQL Server 2005 SP2
SQLNCLI
IIS 7.0
4.
MS Windows XP SP 2
SQL Server 2005 SP2
SQLNCLI
IIS 5.1
5.
MS Windows XP SP 2
SQL Server 2000 SP4
JDBC
Apache 2.2.4
6.
MS Windows XP SP 2
SQL Server 2000 SP4
OLEDB
IIS 5.1
7.
MS Windows 2003 Server SP2
Oracle 10g
OLEDB
IIS 6.0
8.
MS Windows 2003 Server SP2
SQL Server 2005 SP2
SQLNCLI
IIS 6.0

Apart from this the product may also support multiple installations like:

  • Primary Distributed
  • Master Contributor
These will explained in detailed in the coming posts.

2. Business Case Execution:
 In my view, there are two cases which we can think of:
  • Based on the Business requirement(BR) that is gathered from the field, the product is developed, so during the validation of the product it is equally important to validate against the business requirement.
  • Apart from just validating the business requirement, developing the scenario making use of multiple Business Requirement's will be an added value to the product as this is the way customer uses it. In general we don't have customers for each Business requirement, but we have them for the product.