1
T2 - IDENTIFY BASIC TEST
PROCESS
SOFTWARE TESTING
Module Code - K72C001M05
ICT in NVQ Level 5
[Link]
[Link] (Hons) (UoVT), MIT (UCSC)
2
Objectives
• This lesson will provide leaner
• To Identify Fundamental of Test Process
3
Contents
• Fundamental of Test Process
• Test Planning and Control
• Test Analysis and Design
• Test Implementation and Execution
• Evaluating exit criteria and Reporting
• Test Closure activities
4
Fundamental of Test Process
• It is a big process rather than a single activity and must be
planned and it requires discipline to act upon it.
• The quality and effectiveness of software testing are
primarily determined by the quality of the test processes
used.
• The activities of testing can be divided into the following
basic steps:
1. Test Planning and Control
2. Test Analysis and Design
3. Test Implementation and Execution
4. Evaluating exit criteria and Reporting
5. Test Closure activities
5
1. Test Planning and Control
• Test Planning
Producing a document that describes an overall approach of
the Testing process and it verifies whether the Goal can be
achieved or not .
Purpose
• To determine the scope and risks and identify the objectives
of testing.
• To determine the required test resources like people, test
environments etc.
• To schedule test analysis and design tasks, test
implementation, execution and evaluation.
6
1. Test Planning and Control
• Test Control
➢This activity is comparing actual progress against the plan,
and reporting the status, including deviations from the plan.
➢It involves taking actions necessary to meet the mission and
objectives of the project.
Purpose
• Measure and analyze results
• Monitoring and documenting (Progress, Test coverage
and Exit Criteria)
• Initiate corrective actions
• Make decisions
7
2. Test Analysis and Design
Test Analysis
• Process of analyzing the test basis (all documents from
which the requirements of a component or system can be
inferred) and defining test objectives.
• It covers WHAT is to be tested in the form of test
conditions and can start as soon as the basis for testing is
established for each test level.
8
2. Test Analysis and Design
Test Design
• It is an item or event of a component or system that could
be verified by one or more test cases
Example: function, transaction, feature, etc.
• Covers HOW something is to be tested by identifying test
cases with step wise elaboration for the test conditions
(from Test Analysis) or from the test basis using techniques
identified in the test strategy or plan.
9
2. Test Analysis and Design
Test case
• A test case is a document under which a tester will
determine whether a system under test satisfies
requirements or works correctly.
• It has a set of test data, action/event, expected results and
developed for a particular test scenario in order to verify
compliance against a specific requirement.
• Test Data - Data that exists (for example, in a database) before a
test is executed, and that affects or is affected by the component
or system under test.
• Input Data - A variable that is read by a component (whether
stored within the system or outside)
10
2. Test Analysis and Design
Test Scenario
• A Test Scenario is defined as any functionality that can be
tested. It is a collective set of test cases which helps the
testing team to determine the positive and negative
characteristics of the project.
• Test Scenario gives a high-level idea of what we need to
test.
Example of Test Scenario for an eCommerce Application, a few test
scenarios would be
• Test Scenario 1: Check the Search Functionality
• Test Scenario 2: Check the Payments Functionality
• Test Scenario 3: Check the Login Functionality
11
2. Test Analysis and Design
Characteristics of a good test case:
1. Accurate: Exacts the purpose.
2. Economical: No unnecessary steps or words.
3. Traceable: Capable of being traced to requirements.
4. Repeatable: Can be used to perform the test over and
over.
5. Reusable: Can be reused if necessary.
12
2. Test Analysis and Design
Design Test cases
• Design test inputs and test data
• Determine expected result
• Outcome of each test case should be predicted
• What is the outcome / What is changed / What is not
changed
• Design set of tests - Different test sets should be created for
different objectives like Smoke, Regression, building
confidence and finding faults
13
2. Test Analysis and Design
Build Test Cases
• Prepare test scripts
➢Less system knowledge tester has the more detailed the
scripts will have to be
➢Scripts for tools have to specify all the details
• Prepare test data Test data should exist for all the test cases
to be executed
• Expected result should be available
➢Each test case should have an explicit and close ended
expected result
➢Should be defined before the test is executed
14
Sample Test case
Check the Login Functionality
15
16
3. Test implementation & execution
Test execution involves actually running the specified test on a
computer system either manually or by using an automated
test tool.
Tasks
• To develop and prioritize test cases by using techniques and
create test data for those tests.
• To create test suites from the test cases for efficient test
execution. Test suite is a collection of test cases that are used
to test a software program
17
3. Test implementation & execution
• To re-execute the tests that previously failed in order to
confirm a fix.
• To log the outcome of the test execution. A test log is the
status of the test case (pass/fail).
• To compare actual results with expected result.
18
4. Evaluating Exit criteria and Reporting
• Evaluating exit criteria is a process defining when to stop
testing. It depends on handling of code, functionality or risk.
• Basically it also depends on business risk, cost and time and
vary from project to project. Exit criteria come into picture,
when:
➢Maximum test cases are executed with certain pass
percentage
➢Bug rate falls below certain level
➢When we achieve the deadlines
19
4. Evaluating Exit criteria and Reporting
• Evaluating exit criteria has the following major tasks:
➢To assess if more test are needed or if the exit criteria
specified should be changed
➢To write a test summary report for stakeholders
20
5. Test Closure activities
• Test closure activities are done when software is ready to be
delivered.
• The testing can be closed for the other reasons also like:
➢When a project is cancelled
➢When some target is achieved
➢When a maintenance release or update is done
21
5. Test Closure activities
• Test closure activities have the following major tasks:
➢To check which planned deliverables are actually delivered
and to ensure that all incident reports have been resolved
➢To finalize and archive testware such as scripts, and test
environments are used later.
➢To handover the testware to the maintenance organization.
They will give support to the software
➢To evaluate the testing when it has done and learn lessons
for future releases in the projects.
22
Your Tasks!
1. Explain the concepts of “fundamental process of the
software testing”
2. Define the terms “Test case, Test data and Test Scenario”.
3. Evaluate the following statement. “The Software tester
needs to consider the testing environment before writing
any test cases”.
4. List out the tasks which can be followed in each process.
5. Define minimum 3 functions in “Student Management
System” and Prepare the testcase document for any
scenario based on the function which you defined.
23
References
• ArtOfTesting. 2019. Test Scenario | Definition And Examples -
Artoftesting. [online] Available at: <[Link]
scenario-examples> [Accessed 11 May 2019].
• Level, I., Manager, I., Tutorial, A., Tests, I., Us, C., Policy, P., Use, T.
and Us, A., 2019. Search Results What Is Fundamental Test Process
In Software Testing?. [online] [Link]. Available at:
<[Link]
ware+testing%3F> [Accessed 11 May 2019].
• Sharma, L., 2019. What Is Fundamental Test Process In Software
Testing. [online] TOOLSQA. Available at:
<[Link]
software-testing/> [Accessed 11 May 2019].
24
Questions?