Software testing is the process of evaluating a software application's functionality to identify errors and ensure it meets user expectations. It includes various testing methods such as black box and white box testing, and involves creating a comprehensive test plan that outlines the scope, objectives, and activities for the testing project. Test cases are developed to ensure consistency and coverage during execution, which is crucial for validating the software before its release.
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0 ratings0% found this document useful (0 votes)
12 views19 pages
Unit 8software Testing Latest
Software testing is the process of evaluating a software application's functionality to identify errors and ensure it meets user expectations. It includes various testing methods such as black box and white box testing, and involves creating a comprehensive test plan that outlines the scope, objectives, and activities for the testing project. Test cases are developed to ensure consistency and coverage during execution, which is crucial for validating the software before its release.
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 19
Software Testing
• Software testing is the process of assessing the
functionality of a software program. • The process checks for errors and gaps and whether the outcome of the application matches desired expectations before the software is installed and goes live. • Software testing is a process of identifying the correctness of software by considering its all attributes (Reliability, Scalability, Portability, Re- usability, Usability) and evaluating the execution of software components to find the software bugs or errors or defects. Software Testing Black Box Testing White Box Testing It is a way of software testing It is a way of testing the in which the internal structure software in which the tester has or the program or the code is knowledge about the internal hidden and nothing is known structure or the code or the about it. program of the software. Implementation of code is not Code implementation is needed for black box testing. necessary for white box testing. It is mostly done by software It is mostly done by software testers. developers. It is a functional test of the It is a structural test of the software. software. No knowledge of programming It is mandatory to have is required. knowledge of programming. It is least time consuming. It is more time consuming. It is the behavior testing of the It is the logic testing of the software. software. Test Plan A Test Plan can be defined as a document that defines the scope, objective, and approach to test the software application. The Test Plan is a term and a deliverable. The Test Plan is a document that lists all the activities in a QA project, schedules them, defines the scope of the project, test objective etc. The Test Plan is as I like to call a ‘super document’ that lists everything there is to know and need. Test Plan The Test Plan will be designed based on the requirements. While assigning work to the test engineers, due to some reasons one of the testers gets replaced by another one. A test plan is a comprehensive document that lays out all major activities associated with a particular testing project. Test plan is a resource for both testing teams and other teams or stakeholders. They should be simple and concise and layout any specifics of the impending software test. Elements in Test Plan ◼ Overview ◼ Scope ◼ Test Approach ◼ Test Entry and Exit Criteria ◼ Risk and Mitigation Plan ◼ Defect Management ◼ Test Environment ◼ Test Schedule ◼ Test Deliverables ◼ Reports ◼ Stakeholder contacts ◼ Roles and Responsibilities Best Practices to create Test Plan ◼ Invest quality time in understanding requirements and clarifying all the questions and assumptions. ◼ Defining test objective. ◼ Defining test criteria ◼ Planning test environment ◼ Forecasting risk and planning mitigation ◼ Resource Planning ◼ Schedule and Estimation Test case ◼ The test case is defined as a group of conditions under which a tester determines whether a software application is working as per the customer's requirements or not. ◼ Test case designing includes preconditions, case name, input conditions, and expected result. A test case is a first level action and derived from test scenarios. ◼ Test case helps the tester in defect reporting by linking defect with test case ID. ◼ Detailed test case documentation works as a full proof guard for the testing team because if developer missed something. When do we write test case When the customer gives the business needs then, the developer starts developing and says time need for the project. And In the meantime, the testing team will start writing the test cases. Once it is done, it will send it to the Test Lead for the review process. And when the developers finish developing the product, it is handed over to the testing team. The test engineers never look at the requirement while testing the product document because testing is constant and does not depends on the mood of the person rather than the quality of the test engineer. Why we write test case • To require consistency in the test case execution. • To make sure a better test coverage. • It depends on the process rather than on a person. • To avoid training for every new test engineer on the product. Types of Test case ◼ Function Test Case Firstly, we check for which field we will write test cases and then describe accordingly. If the application is data-driven, we require the input column else; it is a bit time-consuming. ◼ Integrated Test Case In this, we should not write something which we already covered in the functional test cases, and something we have written in the integration test case should not be written in the system test case again. ◼ System Test Case We will write the system test cases for the end-to-end business flows. And we have the entire modules ready to write the system test cases. Process to write Test Case • System Study • Identify all test case scenario • Write test cases by applying test case design techniques using standard technique. • Review test cases given to your reviewing • Fix the review comments of your test cases given by the reviewer. • Test case approval • Store it in test case repository Test Execution • Test execution is the process of executing the code and comparing the expected and actual results. • Following factors need to be considered for a test execution process ◼ Based on a risk, select a subset of test suite to be executed for this cycle. ◼ Assign the test cases in each test suite to testers for execution. ◼ Execute tests, report bugs, and capture test status continuously. ◼ Resolve blocking issues as they arise. ◼ Report status, adjust assignments, and reconsider plans and priorities daily. ◼ Report test cycle findings and status. Test Case Example Points to be consider for Test Execution • In this phase, the QA team performs actual validation of AUT based on prepared test cases and compares the stepwise result with the expected result. • The entry criteria of this phase is completion of the Test Plan and the Test Cases Development phase, the test data should also be ready. • The validation of Test Environment setup is always recommended through smoke testing before officially entering the test execution. • The exit criteria requires the successful validation of all Test Cases; Defects should be closed or deferred; test case execution and defect summary report should be ready. Importance of Test Execution • Involves the execution of the code and comparison of expected and actual results. • Responsible for deciding the readiness of the software product, for its entry into the market. • Evaluates and validates the efforts of all member and teams, associated with software development. Process of Test Execution • Preparation : Test strategy and test case are prepared for software testing. • Execution : Test cases are executed while monitoring and comparing the results. • Verification and Validation: The results are verified and validated, recorded and reported by the team through test execution report. Test Execution Cycle • Requirement Analysis • Test Planning • Test case development • Test Environment Setup • Test Execution • Test Cycle Closure Test Execution Summary report • Test Summary Report Identifier summary • Variances • Comprehensive Assessment • Summary Results • Evaluation • Summary of Activities • Approval