05 Test Documentation
05 Test Documentation
TEST DOCUMENTATION
Assessment System for FACE
Version: 1.0.0
Date: 30/10/2022
Prepared by:
Xin Zhenghang (204929)
LI HONGSHEN (208788)
Yang Jiong (209517)
Table of Contents
TEST PLAN
1 Introduction..................................................................................................................... 6
1.1 Purpose.................................................................................................................... 6
1.2 Scope....................................................................................................................... 6
1.3 References............................................................................................................... 6
2.5 Approach.................................................................................................................. 7
3 Test Management........................................................................................................... 9
3.2.1 Hardware........................................................................................................ 10
3.2.2 Software.......................................................................................................... 10
3.2.3 Publications.....................................................................................................10
3.5 Training.................................................................................................................. 12
1|Pag
3.7 Risk and Contingency............................................................................................13
4 General......................................................................................................................... 13
4.1 Metrics................................................................................................................... 13
4.2 Glossary................................................................................................................. 14
1 Introduction................................................................................................................... 17
1.1 Purpose.................................................................................................................. 17
1.2 Scope..................................................................................................................... 17
1.3 References............................................................................................................. 17
2 Test Design................................................................................................................... 17
1 Introduction................................................................................................................... 32
1.1 Purpose.................................................................................................................. 32
1.2 References............................................................................................................. 32
2 Test Cases.................................................................................................................... 32
2.1 Environment........................................................................................................... 32
1 Introduction................................................................................................................... 40
1.1 Purpose.................................................................................................................. 40
2|Pag
1.2 Scope..................................................................................................................... 40
1.3 References............................................................................................................. 40
2 Test Procedure.............................................................................................................. 40
TEST REPORT
1 Test Classes................................................................................................................. 45
2 Conclusion.................................................................................................................... 53
3|Pag
TEST PLAN
Version: 1.0.0
Date: 24/03/2020
4|Pag
Document Control
Document Name FACE Test Plan
Reference Number FACE_TP
Version 1.0.0
Project Code STARTUP_FACE
Status In_Use
Date Released 30/10/2022
Reviewed by:
Approved by:
Approved by:
Version History
Version Release Date Section Amendments
1.0.0 24/03/2020 All Original document
Distribution List
Version Release Controlled Recipient Department Issue Return
Date Copy No Name Date Date
1.0.0 24/03/2020
5|Pag
1 Introduction
1.1 Purpose
i. To detail the activities required to prepare for and conduct the system test.
ii. To communicate to all responsible parties, the tasks that they are to perform and the
schedule to be followed in performing the tasks.
iii. To define the sources of the information used to prepare the plan.
iv. To define the test tools and environment needed to conduct the system test.
1.2 Scope
The scope of testing covers black box-functional testing and white box-functional testing for
features developed in FACE. This test plan only covers system level test, excluding unit test,
static test, integration test, acceptance test, regression test, confirmation test and as well as
other type of test not mentioned in this Test Plan. It would focus on meeting the requirement
of the system and making sure that the system is fit for purpose.
1.3 References
The following IEEE standards have been referenced in preparation of this document:
The following documents will provide the basis for defining correct operation:
6|Pag
Aiman High Inspection and Use Case
evaluation
Table 2.2 Test Traceability Matrix
Aside from the feature listed in Section 2.3, other aspects of the system that are not covered
in this test plan. This includes:
i. Network security
Security for this test plan is not covered here as it is designed for functional test.
2.5 Approach
The test on FACE is a system level functional test that focuses only on the functional part of
the system.
This test will also be a black-box test where test cases are derived using black box testing
techniques such as:
i. Equivalence partitioning
ii. Boundary value analysis
iii. Decision table testing
This test will also be an object-oriented testing where test cases are derived using object-
oriented testing techniques such as:
i. Path Testing
7|Pag
2.7 Suspension Criteria and Resumption Requirements
Suspension Criteria:
In case where PHP environment and MYSQL environment are not available, all tests will be
suspended.
Resumption Requirement:
PHP environment and MYSQL environment are prepared.
The following documents will be generated by the system test group and will be delivered
during the system testing.
Test documentation:
i. Test Plan
ii. Test Design Specifications
iii. Test Case Specifications
iv. Test Procedure Specification
v. Test Report
The following items are needed before the testing can begin:
The following items are needed before the testing can end:
i. All Test Deliverables in Section 2.8 Test Deliverables have been delivered to client.
ii. Test execution has been completed.
iii. Open defect at the end of the final iteration shall be:
Zero fatal defect
Zero major defect
<= three minor defects
8|Pag
3 Test Management
The following table shows the set of tasks necessary to prepare for and perform testing for
Validated Credit Card System. It was identifying dependencies of other tasks and significant
constraint such as test item availability, testing resources availability and deadlines.
The following table shows the set of tasks necessary to Inspection and evaluation FACE
System. It was identifying dependencies of other tasks and significant constraint such as test
item availability, testing resources availability and deadlines.
9|Pag
3.2 Environments and Infrastructure
This section describes the hardware, software and operating system that require for this
system testing.
3.2.1 Hardware
The following table shows the hardware requirements of FACE that will be used to install
FACE.
3.2.2 Software
The following table shows the software requirements of FACE that will be used to install
FACE.
3.2.3 Publications
There are no documents required to support system testing.
This section will identify the individuals or groups responsible for managing, designing,
preparing, executing, witnessing and checking results of this testing. In addition, it will
identify the persons responsible for providing the test items in Section 2.0 and environmental
needs identified in Section 3.2.
10 | P a g
Ensuring the appropriate planning and
management of the test resources
Accessing the progress and effectiveness of
the test effort
Advocating the appropriate level of quality
by the resolution of important defects
Advocating an appropriate level of testability
focus in the software development process
Tester 2 Test Lead 1 Deploying and managing the appropriate
testing framework to meet the testing
mandate
Implementing and evolving appropriate
measurements and metrics
o To be applied against the Product
under test
o To be applied against the Testing
Team
Tester 3 Test Lead 2 Planning, deploying and managing the
testing effort for any given
engagement/release
Managing and growing Testing assets
required for meeting the testing mandate:
o Team Members
o Testing Tools
o Testing Process
Retaining skilled testing personnel
Tester 4 & 5 Test Analyst Identifying the Target Test Items to be
evaluated by the test effort
Defining the appropriate tests required and
any associated Test Data
Gathering and managing the Test Data
Evaluating the outcome of each test cycle
Tester 6 Tester Test Requirements Analysis
Test Case Development/Updating
Test Data Preparation
11 | P a g
Test Execution and Results Logging
Defect Analysis and Reporting
Re-test for Fixes
Table 3.3 Roles and Responsibilities
This section will describe any additional required resources that are not already documented
by other parts of the plan. This is including internal or external resources.
3.5 Training
This section will describe the project schedule and task milestones. The schedule will include
estimated time that required for each testing task. Cost is not included for this testing.
12 | P a g
13 | P a g
Table 3.6 Estimated Testing Schedule
This section identifies the risk issues may impact successful completion of the system
testing activities of Validated Credit Card System. The potential likelihood, impact and
mitigation plan was described in the following tables.
4 General
4.1 Metrics
The following metrics will be collected and used to monitor the progress.
14 | P a g
Percentage of baseline Metric to monitor total 100%
requirement covered against number of baseline
total test cases requirement coverage
Table 4.1 Metric Details
4.2 Glossary
Term Definition
FACE Assessment System for FACE System
Table 4.2 Glossary Test Plan
Impact
Mission Critical: Application will not function, or system fails
Major: Severe problems but possible to work around
Minor: Does not impact the functionality or usability of the process is not according to
requirements/design specifications
Priority
Immediate: Must be fixed as soon as possible
Delayed: System is unstable, but incident must be fixed prior to next level of test cases or
shipment.
Deferred: Defect can be left in if necessary due to time or costs
15 | P a g
TEST DESIGN
SPECIFICATION
Version: 1.0.0
Date: 30/10/2022
16 | P a g
Document Control
Document Name FACE Test Design Specification
Reference Number FACE_TDS
Version 1.0.0
Project Code STARTUP_FACE
Status In_Use
Date Released 30/10/2022
Version History
Version Release Date Section Amendments
1.0.0 30/10/2022 All Original document
Distribution List
Version Release Controlled Recipient Department Issue Return
Date Copy No Name Date Date
1.0.0 30/10/2022
17 | P a g
1 Introduction
1.1 Purpose
1.2 Scope
Assessment system is a system which evaluates students in many ways ,such as Assessing the
students with their psychomotor,Reading for English or Bahasa and Holistic development.This
system is mostly used in schools,teachers and parents can assess students from AS.
After the parent sees the assessment, there is an option to give feedback.
Besides, other people who have been authorized by the parent and teacher, can also see the
child's assessment results. This system also provides a free trail to the authorized user..
1.3 References
The following IEEE standards have been referenced in preparation of this document:
2 Test Design
As discussed in Test Plan (FACE_TP_1.0.0), test cases for FACE will be designed using
four techniques which we are covered in this section. Techniques are applied based on
suitability of techniques according to nature of features.
i. Equivalence Partitioning
18 | P a g
ii. Boundary Value Analysis
iii. Decision Table Testing
iv. Path Testing
19 | P a g
Aiman Inspection and evaluation
i. Equivalence Partitioning
ii. Boundary Value Analysis
iii. Decision Table Testing
iv. Path Testing
Equivalence partitioning is used to split length and prefix of credit card number validation into
possible partitions for test. Boundary value analysis will test the boundary values of the
length of credit card number digits input. Decision table is used to cover isValid() method
decision. Path Testing will test for major condition of VCCS.
20 | P a g
2.2.1.1 Equivalence Partitioning
Figure 2.1 Input and Output for Equivalence Partitioning and Boundary Value Analysis
21 | P a g
Test Test Condition Test Test Coverage Test Data
Condition Coverage
ID ID
TCON-01- Length of credit TCOV-01- Length of credit 555544446666
001 card number < 13 001 card number < 13
AND Prefix of AND Prefix of
credit credit card
number ∉ {4, 5,
37, 6} (Invalid)
TCON-01- Length of credit TCOV-01- Length of credit 50000000000000000
005 card number > 16 005 card number > 16
AND Prefix of AND Prefix of
credit credit card
22 | P a g
TCON-01- Length of credit TCOV-01- Length of credit 70000000000000000
006 card number > 16 006 card number > 16
AND Prefix of Prefix of credit
credit card number ∉
card number ∉ {4, {4, 5, 37, 6}
5, 37, 6} (Invalid)
TCON-01- Display message TCOV-01- Display message 4007000000027
007 ‘Visa Card is Valid 007 ‘Visa Card is Valid
Card’ Card’ (valid
output)
TCON-01- Display message TCOV-01- Display message 5564745926916989
008 ‘Master Card is 008 ‘Master Card is
Valid Card’ Valid Card’ (valid
output)
TCON-01- Display message ‘ TCOV-01- Display message 63049506000000
009 Discover Card is 009 ‘Discover Card is
Valid Card’ Valid Card’ (valid
output)
TCON-01- Display message TCOV-01- Display message 378734493671000
010 ‘American 010 ‘American
Express Card is Express Card is
Valid Card’ Valid Card’ (valid
output)
TCON-01- Display message TCOV-01- Display message 888888abcde
011 ‘Invalid Card’ 011 ‘Invalid Card’
(invalid output)
Table 2.2.1.1 Equivalence Partitioning Test Condition and Coverage
Figure 2.2 Length of Credit Card Number for Boundary Value Analysis
23 | P a g
Test Test Condition Test Test Coverage Test Data
Condition Coverage
ID ID
TCON-01- Length of credit card TCOV-01- Length of credit 555544446666
012 = 12 digits AND Prefix 012 card = 12 digits
of AND Prefix of
number ∉ {4, 5,
37, 6} (Invalid)
TCON-01- Length of credit card TCOV-01- Length of credit 4007000000027
014 = 13 digits AND Prefix 014 card = 13 digits
of AND Prefix of
24 | P a g
credit card number ∉ credit card
{4, 5, 37, 6} number ∉ {4, 5,
37, 6} (Invalid)
25 | P a g
credit card number ∉ credit card
{4, 5, 37, 6} number ∉ {4, 5,
37, 6} (Invalid)
26 | P a g
2.2.1.3 Decision Table Testing
Test TCOV TCOV TCOV TCOV TCOV TCOV TCOV TCOV TCOV
Condition -01- -01- -01- -01- -01- -01- -01- -01- -01-
. 024 025 026 027 028 029 030 031 032
13 ≤ Y Y Y Y Y N N N N
length of
the card
number ≤
16
Prefix = Y Y Y N N Y Y N N
{4,5,37,6}
All input Y Y N Y N Y N Y N
digit
(evens + Y N - - - - - - -
odds) %
10! = 0)
Output
Display X
valid
credit
card
number
Display X X X X X X X X
invalid
credit
card
number
Table 2.2.1.3.b Validate Credit Card Decision Table
27 | P a g
2.2.1.4 Path Testing (Main Method)
28 | P a g
Test Test Condition Test Test Coverage Test Data
Condition ID Coverage ID
TCON-01- Continue TCOV-01- Continue system and cont = ‘Y’
029 system and 033 valid 63049506000000
valid
TCON-01- Continue TCOV-01- Continue system and cont = ‘Y’
030 system and 034 invalid 7777777
invalid
TCON-01- End system TCOV-01- End system cont = ‘N’
031 035
Figure 2.2.1.4 Path Testing Test Condition and Coverage
TCOV-01-018 TCON-01-018
TCOV-01-020 TCON-01-020
TC-01-002 Length of credit card TCOV-01-001 TCON-01-001
number < 13 and Prefix of
credit card TCOV-01-012 TCON-01-012
29 | P a g
TCOV-01-021 TCON-01-021
TC-01-005 Length of credit card TCOV-01-005 TCON-01-005
number > 16 and Prefix of TCOV-01-022 TCON-01-022
credit card
30 | P a g
TCOV-01-026 TCON-01-024
TCON-01-025
TCOV-01-027 TCON-01-024
TCON-01-026
TCOV-01-028 TCON-01-024
TCOV-01-029 TCON-01-025
TCON-01-026
TCOV-01-030 TCON-01-025
TCOV-01-031 TCON-01-026
TCOV-01-032 TCON-01-011
TC-01-012 Continue to validate the TCOV-01-033 TCON-01-029
credit card number TCOV-01-034 TCON-01-030
TC-01-013 Exit the system TCOV-01-035 TCON-01-031
Table 2.3.1 Validate Credit Card Test Identification
The following documents will be generated by the system test group and will be delivered
after test completion.
Test documentation:
i. Test Plan
ii. Test Design Specifications
iii. Test Case Specification
iv. Test Procedural Specification
v. Test Report
31 | P a g
TEST
CASE
SPECIFICATION
Version: 1.0.0
Date: 29/06/2020
32 | P a g
Document Control
Document Name VCCS Test Case Specification
Reference Number VCCS_TCS
Version 1.0.0
Project Code STARTUP_VCCS
Status In_Use
Date Released 29/06/2020
Version History
Version Release Date Section Amendments
1.0.0 29/06/2020 All Original document
Distribution List
Version Release Controlled Recipient Department Issue Return
Date Copy No Name Date Date
1.0.0 29/06/2020
33 | P a g
1 Introduction
1.1 Purpose
i. To detail the test cases derived from test coverage in Test Design Specification
1.2 References
The following IEEE standards have been referenced in preparation of this document:
iii. IEEE 829-1998 Standard for Software and System Test Documentation
iv. IEEE 829-2008 Standard for Software and System Test Documentation
2 Test Cases
2.1 Environment
This section details all test cases designed separated according to feature.
34 | P a g
2.2.1 Validate Credit Card
Test Case ID TC-01-001
Related Feature ID F001
Objective 13 ≤ Length of credit card number ≤ 16 and Prefix of credit
card number ∈ {4, 5, 37, 6}
Covered Test Coverage TCOV-01-003, TCOV-01-014, TCOV-01-016, TCOV-01-
Items 018, TCOV-01-020
Input Excepted Result Inter case Dependency
Credit card number = Display message ‘America None
378734493671000 Express Card is Valid Card’
Table 2.2.1.1.1 Test Case-01-001
35 | P a g
Test Case ID TC-01-004
Related Feature ID F001
Objective 13 ≤ Length of credit card number ≤ 16 and Prefix of credit
card number ∉ {4, 5, 37, 6}
Covered Test Coverage TCOV-01-004, TCOV-01-015, TCOV-01-017, TCOV-01-
Items 019, TCOV-01-021
# Input Excepted Result Inter case Dependency
1. Credit card number = System display message ‘Invalid None
23049506000000 Card’
2. Credit card number = System display message ‘Invalid None
2007000000027 Card’
3. Credit card number = System display message ‘Invalid None
278734493671000 Card’
4. Credit card number = System display message ‘Invalid None
2564745926916989 Card’
Table 2.2.1.4 Test Case-01-004
36 | P a g
Input Excepted Result Inter case Dependency
Credit card number = System display message ‘Invalid None
70000000000000000 Card’
Table 2.2.1.6 Test Case-1-006
37 | P a g
Test Case ID TC-01-010
Related Feature ID F001
Objective Display message ‘American Express Card is Valid Card’
Covered Test Coverage TCOV-01-010, TCOV-01-024
Items
Input Excepted Result Inter case Dependency
Credit card number = System display message None
378734493671000 ‘American Express Card is Valid
Card’
Table 2.2.1.10 Test Case-01-010
38 | P a g
9. Credit card number = System display message ‘Invalid None.
40070 Card’
Table 2.2.1.11 Test Case-01-011
39 | P a g
TEST PROCEDURE
SPECIFICATION
Version: 1.0.0
Date: 05/07/2020
40 | P a g
Document Control
Document Name VCCS Test Procedure Specification
Reference Number VCCS_TCS
Version 1.0.0
Project Code STARTUP_VCCS
Status In_Use
Date Released 05/07/2020
Version History
Version Release Date Section Amendments
1.0.0 05/07/2020 All Original document
Distribution List
Version Release Controlled Recipient Department Issue Return
Date Copy No Name Date Date
1.0.0 05/07/2020
41 | P a g
1 Introduction
1.1 Purpose
This procedure describes the steps necessary to perform the test specified in the test design
specification for VCCS. The procedure describes the execution of the test cases described
in Test Case Specification VCCS_TCS_1_1.0.
For test design specification and test cases, please refer to the following documents:
1.2 Scope
1.3 References
The following IEEE standards have been referenced in preparation of this document:
2 Test Procedure
42 | P a g
4. Input 15 digits of credit card number and prefix of
credit card number ∈ {4, 5, 37, 6}.
5. Input 16 digits of credit card number and prefix of
credit card number ∈ {4, 5, 37, 6}.
6. Press ‘Enter’ to validate the credit card number.
43 | P a g
Set Up 1. Input credit card number
2. Input ‘Y’ to continue validate the credit card
Wrap Up 1. Input ‘Y’ to continue validate the credit card.
2. Input ‘N’ to exit the system.
Table 2.2.1.3 Continue to Validate Credit Card Test Procedure
44 | P a g
TEST REPORT
Version: 1.0.0
Date: 14/07/2020
45 | P a g
Project Title: Validate Credit Card System (VCCS)
Date Description
Prepare Test Basis consists of:
1. Use Case Diagram
13/3/2020 2. Activity Diagram
3. Source Code
4. Decision Table
24/3/2020 Prepare a Test Plan
Prepare a Test Design Specification I
Group Activity: 4/5/2020 1. Equivalence Partition
2. Boundary Value Analysis
Prepare a Test Design Specification II
5/6/2020 1. Decision Table
2. Path Testing
22/6/2020 Prepare Test Identification in Test Design Specification
29/6/2020 Prepare Test Case Specification
5/7/2020 Prepare Test Procedure Specification
14/7/2020 Prepare Test Report
46 | P a g
1 Test Classes
The program that we conducted and tested is about validate credit card based on the input
of the card number. The ValidateCard class consist 9 method which are getDigit(int),
hasValidPrefix(String), isAllDigits(String), isValid(String), isValidLength(String),
main(String[]), sumOfDoubleEvenPlace(String), sumOfOddPlace(String), and type(String).
We execute the Junit ValidateCardTest class based on the test procedure. For Test
Procedure 1, we execute using isValid() and type() method. For Test Procedure 2, we
execute using isValid() method. For Test Procedure 3 and 4, we execute using main(null) to
execute a Main method.
import java.util.Scanner;
if (isValid(cc)) {
} else {
48 | P a g
return validPrefix;
}
if (number.startsWith("4")) {
return "Visa card";
}
else if(number.startsWith("5")) {
return "Master card";
}
else if (number.startsWith("37")){
return "America Express card";
}
else {
return "Discover card";
}
}
In Junit, for test condition ‘Display credit card is valid/ invalid’, we called method isValid() and
type() as isValid() method represents the true or false for validity and type() method
represents the type String for credit card name.
assertEquals(expOutput1, actOutput1);
assertEquals(expOutput2, actOutput2);
assertEquals(expOutput3, actOutput3);
assertEquals(expOutput4, actOutput4);
assertEquals(expOutput5, actOutput5);
49 | P a g
assertEquals(expOutput6, actOutput6); assertEquals(expOutput7, actOutput7); assertEquals(expOutput8, actOut
}
Figure 1.1.1 Junit Code for Test Procedure 1
boolean expOutput1 = false; boolean expOutput2 = false; boolean expOutput3 = false; boolean expOutput4 = false;
50 | P a g
boolean expOutput5 = false; boolean expOutput6 = false; boolean expOutput7 = false; boolean expOutput8 = false; b
Test
} Procedure TP-01-002
Test Case TC-01-002, TC-01-003, TC-01-004, TC-01-005, TC-01-006, TC-
01-011
Description Validate credit card number (Invalid)
Input Expected Output Actual Output Pass/ Fail
TC-01-002
555544446666 isValid = False isValid = False Pass
TC-01-003
255544446666 isValid = False isValid = False Pass
TC-01-004
TCON-01-004 isValid = False isValid = False Pass
23049506000000
TCON-01-015 isValid = False isValid = False Pass
2007000000027
51 | P a g
TCON-01-019 isValid = False isValid = False Pass
278734493671000
TCON-01-021 isValid = False isValid = False Pass
2564745926916989
TC-01-005
TCON-01-005 isValid = False isValid = False Pass
50000000000000000
TC-01-006
TCON-01-006 isValid = False isValid = False Pass
70000000000000000
TC-01-011
TCON-01-011 isValid = False isValid = False Pass
888888abcde
TCOV-01-025 isValid = False isValid = False
4000000000007
TCOV-01-026 isValid = False isValid = False Pass
40070000abcde
TCOV-01-027 isValid = False isValid = False Pass
1007000000027
TCOV-01-028 isValid = False isValid = False Pass
10070000abcde
TCOV-01-029 isValid = False isValid = False Pass
40070
TCOV-01-030 isValid = False isValid = False Pass
400ab
TCOV-01-031 isValid = False isValid = False Pass
10070
TCOV-01-032 isValid = False isValid = False Pass
40070
Table 1.1.2 Test Report for Test Procedure 2
@Test
void testProcedure3and4() {
ValidateCard.main(null);
}
Figure 1.1 Junit Code for Test Procedure 3 and 4 (test main)
52 | P a g
Figure 1.1.3 Input from Console for Test Procedure 3 and 4
53 | P a g
1.2 Coverage Information
54 | P a g
2 Conclusion
The Validate Credit Card System (VCCS) is developed using Java Programming
Language. The algorithm used in this project is used to determine whether a credit card
number is entered correctly. The credit card number are generated following this validity
check, commonly known as the Luhn check or the Mod 10 check.
The test is conducted by using black-box testing where test cases are derived using
black- box testing techniques such as boundary value analysis (BVA) and decision table.
We’re also conducted the test by using white-box testing which is basis path testing where
the test case derived from source code of the program. Basis path testing derived a logical
complexity measure of a procedural design. This techniques required a flow graph to
determine the independent paths.
Since this program consists of few methods, we decided to implement basis path
testing to ensure that all statements and conditions have been executed at least once. The
testing is done using Junit tool in Eclipse IDE.
55 | P a g