3
Title: Some Functional Testing Types Functional testing is done to target and ensure the business objectives are met. The focus of this testing to ensure the functionality meets the business requirements. The goal of the testing is to certify and authenticate the behavior of the system and test if all the requirements mentioned in the BRD and/or functional specifications are met. It ensures that the application is tested and ready to be liberated and implemented. Unit Testing – This type of testing is mostly carried out by the developer or programmer to check the code is correct and that it executes properly. The unit testing is part of white box testing method which sometimes includes building a test plan, writing unit test case scripts and run the tests. It indentifies any defects in the functionality of the application. This is generally performed by programmers in the Development environment or on their local machines and done at the code level. Since, unit testing is the first stage of dynamic testing so more the bugs detected in this stage will prevent defects from flowing into the subsequent phases and also save cost if and when identified in the other levels of testing or subsequent test efforts. System Testing - The Testing is performed to establish that the applications functionality meets its intended business goals and purposes are met. It also factors in other subsystems which are tested individually as well together to identify defects within the system itself. Independent system testers perform the testing, building a system test plan and executing the test plan. Generally done in a different environment other than development environment where the system under test is the focus using different sets of test data for various test conditions.

What is Software Testing Lifecycle?

Embed Size (px)

Citation preview

Page 1: What is Software Testing Lifecycle?

Title: Some Functional Testing Types

Functional testing is done to target and ensure the business objectives are met. The focus of this testing to ensure the functionality meets the business requirements. The goal of the testing is to certify and authenticate the behavior of the system and test if all the requirements mentioned in the BRD and/or functional specifications are met. It ensures that the application is tested and ready to be liberated and implemented.

Unit Testing – This type of testing is mostly carried out by the developer or programmer to check the code is correct and that it executes properly. The unit testing is part of white box testing method which sometimes includes building a test plan, writing unit test case scripts and run the tests. It indentifies any defects in the functionality of the application. This is generally performed by programmers in the Development environment or on their local machines and done at the code level. Since, unit testing is the first stage of dynamic testing so more the bugs detected in this stage will prevent defects from flowing into the subsequent phases and also save cost if and when identified in the other levels of testing or subsequent test efforts.

System Testing - The Testing is performed to establish that the applications functionality meets its intended business goals and purposes are met. It also factors in other subsystems which are tested individually as well together to identify defects within the system itself. Independent system testers perform the testing, building a system test plan and executing the test plan. Generally done in a different environment other than development environment where the system under test is the focus using different sets of test data for various test conditions.

Regression Testing – This testing type done to assure the quality of the software is maintained and any existing changes made to the code didn’t introduce any new defect to the project or broken something that was previously working. This testing type although must be done whenever code changes are done, it is impractical to do it. Generally a subset of the passed test cases focusing on the core functionality is done during the testing period and a separate cycle of testing done towards the end prior to UAT or during UAT to ensure the application is still working as per its design subsequent to all the defect fixes being complete.

Integration Testing – Also known as System Integration Testing, this is performed to certify the software is well aligned with the other existing software applications and systems. The focus of this test effort to identify the cross impact of the application under test on other systems/applications and vice versa. This testing can carried out in 3 ways – Bottom up-method which is carried out first , where the units are testing from higher level to lower level and the second one is top-down which is vice versa. The third one is hybrid approach which is a combination of bottom up and top down approach. Since

Page 2: What is Software Testing Lifecycle?

testing is context dependent, it is important to identify where the connections are and how the data flows in between the systems. A combination of Black box and Gray box testing method could be used to perform this testing. Sometimes a separate Integration testing plan is created for complex implementations.

User Acceptance Testing – Also called as Business Acceptance Testing, this testing type is the final stage of testing which assures that the all business needs and commitments are fulfilled. Ideally speaking the business users or end users of the application should be testing the software by putting it through user scenarios. Sometimes, it is also called “Beta Testing “which focus on the real world use cases. This testing is performed to prove that the application can support the daily working of the business while maintaining the overall quality of the system at the same time. The testing team may support the UAT testers in this effort. Sometimes the users will randomly test the application before a formal sign off is provided.

About Us: Headquartered in Toronto, Stepin2IT is one of the fastest growing training organizations in North America providing training programs that are aimed at bridging the skills gap and to develop the knowledge base and skill set of its trainees. We are committed to be the training provider of choice for individuals and organizations alike. We are a growth-oriented, customer-focused, integrated training organization focused on delivering “Hands on IT training” which believes in “Transforming IT education into job skills”. We provide a wide variety of training programs aligned with industry requirements. For more information on Software Testing training or QA Training in Toronto or elsewhere contact us now on 416.743.6333 or [email protected]