During Software Testing Life Cycle we do different types of testing let's discuss each and every testing and its importance When do we start testing? The testing process starts with analyzing the requirements When do we end testing? After completion of UAT Why do we go for testing? To improve the software quality, making sure that end users should not find any failures, to stay in business Regression Testing: Regression testing is the process of testing changes to an application to make sure that the existing application still works with the new changes In Regression testing we use the Strategy called Automation testing, we automate every test case This test is recommended before every release We can do regression testing by selecting a few test cases which are frequent defects, critical functionalities, and Integration Test Cases Smoke Testing: Regression testing and Smoke testing are related and similar the only difference we can find the depth of the test and test run time Smoke test run after every build We can add the most critical functionalities to test We can automate the smoke test in the CI environment Component Testing: Component testing is a method where testing is done for each component separately. It can be done in isolation from the rest of the application depending upon the development life cycle Integration Testing: Integration testing is defined as a type of testing where software modules are integrated logically and tested as a group System Testing/End-to-End Testing: System testing or end-to-end testing is a level of software testing where complete software is tested. The purpose of the test is to know if the software is working according to specified requirements Exploratory Testing: Exploratory testing is done with the knowledge of the application without specific scripted techniques used in this test and to find out the issues during and after the software development process. This testing is done to make sure we deliver the product with bug-free Verification: The process of evaluating the work product and whether it is meeting the specified requirements for that phase Validation: The process of evaluating the end software product whether it satisfies the specified business requirements UAT Testing: Universal Acceptance Testing is the last step before the product goes live or before the delivery of the product is accepted. This is performed by the client, he checks and gives acceptance It’s done in the client's place in his environment Load Testing: Load Testing helps us to study the behavior of the application under various loads. The main parameter to focus is response time. This study reveals how many concurrent users that server can handle effectively and quickly. Stress Testing: Stress Testing helps us to observe the stability of the application. The main intention is to identify the breaking point of the server Cross-browser Testing: This testing is sometimes called compatibility testing. When we develop the pages in IE compatible, the same page is not working in Firefox or Netscape properly, because most of the scripts are not supporting two other than IE. So that we need to test the cross-browser Testing Black Box Testing: Black box testing is a software testing method in which the internal structure/design/implementation of the item being tested is not known to the tester Programming knowledge is not required to tester Implementation knowledge is not required to tester Requirement specifications needed to test the test cases What does black-box testing mean at the unit, integration, and system levels? Tests for each software requirement using Equivalence Class Partitioning, Boundary Value Testing, and more Test cases for system software requirements using the Trace Matrix, Cross-functional Testing, Decision Tables, and more Test cases for system integration for configurations, manual operations, etc White Box Testing: White box testing is a software testing method in which the internal structure/design/implementation of the item being tested is known to the tester This test was done mainly by the developer Programming knowledge is required Implementation knowledge is required Detail design knowledge is required Challenges faced as QA Engineer in the Software Testing process: 1. Time pressure and deadline 2. Requirements are getting changed in the middle of the process 3. Patch Migrations happened without intimating 4. Defects rejection without even analyzing the problems 5. Some defects are not reproducible 6. When Bug Closing taking maximum time, if it then dependent functionalities are not able to test 7. Identifying Test Data 8. Delays in Build Delivery 9. Configuration problems( Performance) 10. Remote Desk Top issues Conclusion: After doing all types of testing during test execution we detect the defects for the failed test and once the developer fixes the bug we do a retest and close the bug Re-Testing is a type of testing validating Defect Fix. After the Defect is fixed by Developer as a Tester I will test whether Defect is properly fixed or not. Now, with this, we end the topic of different types of Testing Happy Coding 😊
Comments