You are on page 1of 3

What is actual testing process in practical or company environment?

Whenever we get any new project there is initial project familiarity meeting. In this meeting we basically discuss on who is client? what is project duration and when is delivery? Who is involved in project i.e manager, Tech leads, QA leads, developers, testers etc etc..? From the SRS (software requirement specification) project plan is developed. The responsibility of testers is to create software test plan from this SRS and project plan. Developers start coding from the design. The project work is divided into different modules and these project modules are distributed among the developers. In meantime testers responsibility is to create test scenario and write test cases according to assigned modules. We try to cover almost all the functional test cases from SRS. The data can be maintained manually in some excel test case templates or bug tracking tools. When developers finish individual modules, those modules are assigned to testers. Smoke testing is performed on these modules and if they fail this test, modules are reassigned to respective developers for fix. For passed modules manual testing is carried out from the written test cases. If any bug is found that get assigned to module developer and get logged in bug tracking tool. On bug fix tester do bug verification and regression testing of all related modules. If bug passes the verification it is marked as verified and marked as closed. Otherwise above mentioned bug cycle gets repeated.(I will cover bug life cycle in other post) Different tests are performed on individual modules and integration testing on module integration. These tests includes Compatibility testing i.e testing application on different hardware, OS versions, software platform, different browsers etc. Load and stress testing is also carried out according to SRS. Finally system testing is performed by creating virtual client environment. On passing all the test cases test report is prepared and decision is taken to release the product! So this was a brief outline of process of project life cycle. Here is detail of each step what testing exactly carried out in each software quality and testing life cycle specified by IEEE and ISO standards: Review of the software requirement specifications Objectives is set for the Major releases Target Date planned for the Releases Detailed Project Plan is build. This includes the decision on Design Specifications Develop Test Plan based on Design Specifications Test Plan : This includes Objectives, Methodology adopted while testing, Features to be tested and not to be tested, risk criteria, testing schedule, multi-platform support and the resource allocation for testing. Test Specifications

This document includes technical details ( Software requirements ) required prior to the testing.        Writing of Test Cases Smoke(BVT) test cases Sanity Test cases Regression Test Cases Negative Test Cases Extended Test Cases Development Modules developed one by one

Installers Binding: Installers are build around the individual product. Build procedure : A build includes Installers of the available products multiple platforms. Testing     Smoke Test (BVT) Basic application test to take decision on further testing Testing of new features Cross-platform testing Stress testing and memory leakage testing.

Bug Reporting Bug report is created Development Code freezing No more new features are added at this point. Testing Builds and regression testing. Decision to release the product Post-release Scenario for further objectives. What if there isnt enough time for thorough testing Here are some points to be considered when you are in such a situation:         Find out Important functionality is your project. Find out High-risk module of the project? Which functionality is most visible to the user? Which functionality has the largest safety impact? Which functionality has the largest financial impact on users? Which aspects of the application are most important to the customer? Which parts of the code are most complex, and thus most subject to errors? Which parts of the application were developed in rush or panic mode?

   

What do the developers think are the highest-risk aspects of the application? What kinds of problems would cause the worst publicity? What kinds of problems would cause the most customer service complaints? What kinds of tests could easily cover multiple functionalities?

Considering these points you can greatly reduce the risk of project releasing under less time constraint.

Desktop application runs on personal computers and work stations, so when you test the desktop application you are focusing on a specific environment. You will test complete application broadly in categories like GUI, functionality, Load, and backend i.e DB. In client server application you have two different components to test. Application is loaded on server machine while the application exe on every client machine. You will test broadly in categories like, GUI on both sides, functionality, Load, client-server interaction, backend. This environment is mostly used in Intranet networks. You are aware of number of clients and servers and their locations in the test scenario. Web application is a bit different and complex to test as tester dont have that much control over the application. Application is loaded on the server whose location may or may not be known and no exe is installed on the client machine, you have to test it on different web browsers. Web applications are supposed to be tested on different browsers and OS platforms so broadly Web application is tested mainly for browser compatibility and operating system compatibility, error handling, static pages, backend testing and load testing.

You might also like