SlideShare una empresa de Scribd logo
1 de 13
Descargar para leer sin conexión
Test Case Design
and Testing Techniques
Factors to Consider
A RapidValue Solutions Whitepaper
Content
Executive Summary......................................................................................................................
Test Case Design and Testing Techniques.....................................................................................
Test Analysis...............................................................................................................................
Phases of Test Development........................................................................................................
Quality or Product Risk and Risk Based Testing.............................................................................
03
04
04
04
06
Types of Test Design Techniques.................................................................................................
Choosing the Techniques - Factors to Consider.............................................................................
Test Case Design Checklist..........................................................................................................
Conclusion.................................................................................................................................
06
09
10
12
02©RapidValue Solutions 02
03©RapidValue Solutions
Executive Summary
Software testing is an essential and important technique for assessing the quality of a particular software
product/service. In software testing, test cases and scenarios play an inevitable and a pivotal role. A
good strategic design and technique help to improve the quality of the software testing process. The
process improves the quality of the product/service and ensures effectiveness. Software testing is the
process of analyzing a software item to know the differences between the existing and required
conditions (bugs).Testing helps to evaluate the features of the software, to ensure it is free of bug. It is
an activity that is carried out in co-ordinance with the development cycle and before the deployment.
This paper provides information about test case design activities, test analysis, quality risks, testing
techniques, phases of test development. The paper also, explains the factors that need to be considered
while choosing the right testing techniques and provides a checklist of test cases based on our rich
experience of testing mobile apps.
04©RapidValue Solutions 04
Test Case Design and Testing Techniques
Test design is an art that has interesting techniques associated with it, which make it effective and
useful for testing. Many people, when creating a test plan or writing the test case, fail to decipher what
to test in a given cycle or what not to test in a given project. When you are checking the parameters
that are not be tested, one must ensure that the requirement which is not testable by testers must be
addressed here.
Test Analysis
Once the test planning is completed, the test analysis and design in software testing life cycle need to
be carried out. As the first step, you need to schedule all the test-basis. Test-basis is all the
requirements and design specification such as network architecture, system architecture. All the
documents that help in testing must be reviewed when performing the test analysis. Based on the
review of test basis, you need to evaluate testability of the test basis and objects. Identify and prioritize
test conditions, test requirements, or test objectives and required test data, based on analysis of test
items. Once the test condition has been ascertained, you can start prioritizing high-level test cases.
Writing high-level test cases is kind of a pseudo test case design that means the test cases that do not
have any test data. For example, while writing a test case for a login screen in an application or
entering valid username and password, the user must go to the login screen, not writing the test data
for username and password. In analysis and design phase, you have to focus on high level test cases,
which are logical test cases. In this phase, you have to set the test environment that is based on the
application domain (healthcare, social, banking etc.). Another important aspect is identifying
infrastructure and testing tools. In case of mobile application testing, you need to select the device
model, version and screen resolutions. Once you have identified the infrastructure and tools, create
bi-directional traceability between test cases and test basis.
Phases of Test Development
Test development takes place in the following phases:
QUALITY RISK ANALYSIS HIGH-LEVEL TEST DESIGN LOW-LEVEL TEST DESIGN
03©RapidValue Solutions 05
Once the quality risk analysis is completed, you need to work on a high-level test design and
eventually, move on to a low-level test design. The input to risk analysis can be functional specification,
system specification and output can be high-level test plan and risk analysis document. All the output
from risk analysis goes as input to the high-level test design. Output from high-level test design is
high-level test design document, logical test cases; all the documents serve as input to low-level test
design. Low-level test design is characterized by a lot of test cases, test suites and test design
documents.
Quality risk analysis. In quality risk analysis, identify all risks in the system, using risk analysis
techniques, like informal risk analysis technique (functionality, data quality, error handling and
recovery, performance, localization, usability etc.). All risks must be noted and covered in high-level
and low-level test design. Also, you can use formal risk analysis techniques like ISO9126. (It explains
the major six categories of system risk and sub-categories).
High-level test Design. In high-level test design, create test suites for all quality risk categories that
are identified. During risk analysis, make sure to cover every risk category, with at least one test suite.
You must trace every risk with the test suite.
Sl.
no. Module Priority Test Steps
Expected
Result
Actual
Result RemarksStatus
Test Case
ID
Scenario/
Test Case
Description
Defect
ID
Raised
Build
Version
1 TC_001 Login P1 Verify the
successful
login with
google
account
1. Install the
application from
app store.
Once after
successful
validation of
email and
password the
user should be
able to view
the mail in the
inbox.
Same as
expected
Pass v1.27.18
1454
2. Tap icon from
the list.
3. Tap to sign in
with Google
button.
4. Enter Valid email
id and password.
5. Tap to sign in.
Functional Test Cases
Fig.1: Sample test case design template
03
©RapidValue Solutions 06
SPECIFICATION-BASED TECHNIQUE STRUCTURE-BASED TECHNIQUE EXPERIENCE-BASED TECHNIQUE
Quality or Product Risk and Risk Based Testing
Risk is something that can result into undesirable consequences. The level of risk can be determined by
likelihood and impact. With experience, some of the risk can be mitigated, but not all. In quality or
product risk, there is a possibility that the system will fail to satisfy the customers, users, or other
stakeholders. A set of possible bugs are behind the quality risk.
Risk based testing reduces quality risk throughout the project, when identified, and assesses the risk,
and guides the test process, using risk. More knowledge about risk helps to answer key testing
questions. Ideally, risk based testing is part of a larger risk management approach. Once you identify
the risk then assign the level of risk; only separate risk items, when necessary, to distinguish between
different levels of risk. You need to think about technical and business risk; impact of technical risk on
system and business risk on users. Testing, follow-up and re-alignment of risk analysis are mandatory
with regard to key project milestone.
Types of Test Design Techniques
There are three main types of test design techniques.
Specification-based technique is, also, called black-box technique. In this technique, you create
tests, primarily, by analysis of the test basis and tracing the bugs in order to know how the system
behaves. One of the basic specification-based techniques used is equivalence partitioning technique. In
equivalence partitioning, divide the inputs, outputs, behaviors and environments into classes. Define, at
least, one test case in each partition, or use boundary values in partitions that are in ranges. Tests can
be designed to cover all valid and invalid partitions.
Second technique in specification-based is boundary value analysis. Boundary value analysis is the
refinement of equivalence partitioning that selects the edges or end-points of each partition for testing.
Equivalence partitioning looks for bugs in the code that handles each equivalent class. Boundary values
are members of equivalence classes that, also, look for bugs in the definition of the edges. Boundary
value technique can be applied when the elements of the equivalence partition are ordered. In
non-functional testing, you can use non-functional boundaries.
©RapidValue Solutions 07
Use case testing is, typically, used when you are about to enter UAT stage, at the end of the system
testing. In this testing, you use the use cases or business scenarios for end to end systems’ testing.
Use case has preconditions and post conditions to be met. Use cases have main flows, alternative flows
and sometimes, exceptional flows. Use case testing uncovers defects in process flows during real world
use of system.
Structure-based technique is, also, called white-box technique. The key concepts include code
coverage, statement and decision coverage, and control-flow test design technique. Structure-based
tests are based on how the system works inside; which helps to determine and achieve a level of
coverage of control flows based on code analysis. Data flows, based on code and data analysis, also
determine and achieve a level of coverage of interfaces, classes, call flows, and the like, based on APIs,
system design etc.
Different levels of code coverage include:
1. Statement coverage: every statement executed.
2. Branch coverage or decision coverage: every decision taken.
3. Condition coverage: each condition evaluated, both true and false.
4. Multiple condition coverage: every combination of true and false conditions evaluated.
5. Loop coverage: all loop paths taken zero, once, and multiple times.
Experience-based technique is based on the tester’s skill,
perception, experience with similar applications, and
experience with similar technologies. In this technique, tests
are often, created during the test execution, that is, test
strategy is dynamic. Examples include error guessing, bug
hunting, breaking applications based on checklists, and
exploratory testing. Testing experience provides much more
to understand the scenario that helps to improve the
experience-based testing on different applications.
Sl.
no.
Description
To be Implemented
Pilot Release Release I Release II Release III
Appropriate client icon is displayed.
Click on application from device launches application.
Alignment of pages in both the views (portrait and landscape).
Images are properly displayed/present/in the contents view.
Zooming functionality of the pages/images.
Search functionality.
Validate fields in 'Sign In'/'Sign Up' through 'Settings' option.
Advertisements images/videos are displayed properly in app.
Forward and backward swiping is consistently working.
Crash encountered during swiping, zooming and searching.
Text in the buttons properly displayed.
Check for duplication of contents in the bookmark page.
1
2
3
4
5
6
7
8
9
10
11
12
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
©RapidValue Solutions 08
Defects Based on Priority Defects Based on Status
Fig. 2: Sample test execution dashboard
UI Test Cases Functional
Test Cases
NFR
Test Cases
1
0.9
0.8
0.7
0.6
0.5
0.4
0.3
0.2
0.1
0
Pass
Failed
NotTested
Hold/Blocked
Total
1
0.8
0.6
0.4
0.2
0
Urgent(P1)
High
(P2)
M
edium
(P3)
Low
(P4)
Open Closed
ClosedOpen
Urgent (P1)
High (P2)
5
3
7
2
3
5
9
1
7
2
3
5
9
1
5
3
Medium (P3)
Priority
Severity
Low (P4)
Critical
Major
Moderate
Minor
Testing Status
Testing Status
UI Test Cases Functional Test Cases NFR Test Cases
Pass
Failed
Not Tested
On Hold/Blocked
Total
2
3
5
9
1
5
3
7
2
3
2
3
5
9
1
03©RapidValue Solutions 0309
Choosing the Techniques - Factors to Consider
Choosing the right test technique depends on the following factors:
Type of system or software application. The design techniques, that are chosen, will depend
on the type of software application or system. Basically, techniques are chosen related to the
application type, mainly domain of the application, like finance, social media, healthcare etc. Also,
you need to categorize mobile or web applications.
Regulatory standards. Regulatory standards are common testing standards approved,
internationally. Selection of techniques, also, depends on the standard of testing that is followed
in the IT industries.
Customer requirements. Selection of techniques is also, based on the customer requirements
(sometimes they do not provide any requirement, in such a scenario you have to choose the
experience based approaches). The techniques may vary, based on the customer requirements.
Level and type of risk. Based on the risk during the quality analysis phase, you have to choose
the right techniques. Risks may include lack of requirement, equipment or anything similar that
affects the quality. There can be both, high-level and low-level design techniques.
Test objectives. Test objectives are important aspects that give a clear idea about the scope of
the testing activities. Based on that, you can select appropriate techniques.
Documentation or requirement. Selection of techniques depends on the availability of test
documents like requirement document, analysis report, design document etc.
Tester’s skill and knowledge. This factor is quite significant and plays a pivotal role in the
selection of experience-based technique. The knowledge of the tester, his/her perception of the
application and experience on test execution, to figure-out the defects, help to make the product
a quality one.
Time and budget. Both, time and budget, are critical factors while choosing the right design
technique. Some projects are short-term and some are long-term. Based on the project you need
to choose techniques. You need to also consider how much budget is allotted for the project. For
small budgets, cost-effective approach should be taken.
Application development life cycle. The application development life cycle has different
stages, parallel to testing stages. Different stages of development and testing require different
techniques.
1.
2.
3.
4.
5.
6.
7.
8.
9.
03©RapidValue Solutions 0310
Previous experience on types of defects tracked. This is kind of user experience on defects
that he/she had faced in testing life cycle. Further, he/she can replicate the same situation and
catch the defects, encountered previously, from his/her experience. This is, also, a type of
experience based technique.
10.
Test Case Design Checklist
Creating an exhaustive checklist having test cases covering all the possible scenarios and tracking it
throughout the project lifecycle would help you achieve the optimal software quality. Here is a sample
checklist of test cases, which could be considered while testing a mobile app.
Sl.
no.
Description
To be Implemented
Pilot Release Release I Release II Release III
Appropriate client icon is displayed.
Click on application from device launches application.
Alignment of pages in both the views (portrait and landscape).
Images are properly displayed/present/in the contents view.
Zooming functionality of the pages/images.
Search functionality.
Validate fields in 'Sign In'/'Sign Up' through 'Settings' option.
Advertisements images/videos are displayed properly in app.
Forward and backward swiping is consistently working.
Crash encountered during swiping, zooming and searching.
Text in the buttons properly displayed.
Check for duplication of contents in the bookmark page.
Crash encountered while clicking on images simultaneously.
Jittering of the images/contents while scrolling.
Check for the 'Application Name'(Style/Font/Color/Size).
Type of animation implemented upon click on the buttons.
Virtual keyboard displayed when the user click on any text fields.
Validation in the password field.
Check that the URL displayed in any page should display as link.
Check that any website link should be easy to click.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
03© RapidValue Solutions 0311
Sl.
no.
Description
To be Implemented
Pilot Release Release I Release II Release III
Appropriate client icon is displayed.
Click on application from device launches application.
Alignment of pages in both the views (portrait and landscape).
Images are properly displayed/present/in the contents view.
Zooming functionality of the pages/images.
Search functionality.
Validate fields in 'Sign In'/'Sign Up' through 'Settings' option.
Advertisements images/videos are displayed properly in app.
Forward and backward swiping is consistently working.
Crash encountered during swiping, zooming and searching.
Text in the buttons properly displayed.
Check for duplication of contents in the bookmark page.
Crash encountered while clicking on images simultaneously.
Jittering of the images/contents while scrolling.
Check for the 'Application Name'(Style/Font/Color/Size).
Type of animation implemented upon click on the buttons.
Virtual keyboard displayed when the user click on any text fields.
Validation in the password field.
Check that the URL displayed in any page should display as link.
Check that any website link should be easy to click.
Validate register properties.
Call interrupt functionality.
Check the record time for Audio/Video/Voice recorder if any.
Download functionality if exists, works without any interruption.
No crash during or after download functionality.
Login/Logout functionality in Settings page.
Correct username is displayed in the settings, after user login.
Connectivity error message while downloading without Wi-Fi.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
Jittering of the images/contents while scrolling.
Check for the 'Application Name'(Style/Font/Color/Size).
Type of animation implemented upon click on the buttons.
Virtual keyboard displayed when the user click on any text fields.
Validation in the password field.
Check that the URL displayed in any page should display as link.
Check that any website link should be easy to click.
Validate register properties.
Call interrupt functionality.
Check the record time for Audio/Video/Voice recorder if any.
Download functionality if exists, works without any interruption.
No crash during or after download functionality.
Login/Logout functionality in Settings page.
Correct username is displayed in the settings, after user login.
Connectivity error message while downloading without Wi-Fi.
Session expiry while the application is idle for a particular time limit.
Progress/ duration bar display while playing audio or video.
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
03©RapidValue Solutions 0312
Conclusion
The process of test designing is of high priority. A poorly designed test will lead to improper testing of
an application and thereby, yield test wrong and harmful results. This, in turn, will lead to the failure in
identifying defects. As a consequence, an application, containing errors, may be released.
There are various types of designing techniques and the challenge lies in selecting the right set of
relevant test design techniques for the particular application. The different types of testing techniques
have their own unique benefits. The use of any particular technique is considered, only, after much
contemplation and by giving maximum emphasis on the type of application.
This whitepaper is written by Sanoj Swaminathan, Technical Lead - Quality Assurance,
RapidValue Solutions.
If you’d like to learn more on test case designs and testing techniques, please reach out to us
at contactus@rapidvaluesolutions.com . We’d be happy to hear from you.
About RapidValue
A global leader in digital transformation for enterprise providing end-to-end mobility,
omni-channel, IoT and cloud solutions. Armed with a large team of experts in
consulting, UX design, application development, integration and testing, along with
experience delivering projects worldwide, in mobility and cloud, we offer a wide range
of services across industry verticals. We deliver services to the world’s top brands,
fortune 1000 companies, Multinational companies and emerging start-ups. We have
www.rapidvaluesolutions.com www.rapidvaluesolutions.com/blog
+1 877.643.1850 contactus@rapidvaluesolutions.com
July 2016
offices in the United States, the United Kingdom and India.

Más contenido relacionado

La actualidad más candente

Test Case Design and Technique
Test Case Design and TechniqueTest Case Design and Technique
Test Case Design and TechniqueSachin-QA
 
ISTQB - What's testing
ISTQB - What's testingISTQB - What's testing
ISTQB - What's testingHoangThiHien1
 
Software development life cycle yazılım geliştirme yaşam döngüsü
Software development life cycle   yazılım geliştirme yaşam döngüsüSoftware development life cycle   yazılım geliştirme yaşam döngüsü
Software development life cycle yazılım geliştirme yaşam döngüsüMesut Günes
 
Test Automation Strategy
Test Automation StrategyTest Automation Strategy
Test Automation StrategyMartin Ruddy
 
Test automation framework
Test automation frameworkTest automation framework
Test automation frameworkQACampus
 
Automated Testing with Agile
Automated Testing with AgileAutomated Testing with Agile
Automated Testing with AgileKen McCorkell
 
Test case design
Test case designTest case design
Test case design99pillar
 
Software development plan template
Software development plan templateSoftware development plan template
Software development plan templateRina Wijaya
 
Project Management: Business Case
Project Management: Business CaseProject Management: Business Case
Project Management: Business CaseYerbol Buranbay
 
Test Process Maturity Measurement and Related Measurements
Test Process Maturity Measurement and Related MeasurementsTest Process Maturity Measurement and Related Measurements
Test Process Maturity Measurement and Related MeasurementsSTAG Software Private Limited
 
Whitebox testing
Whitebox testingWhitebox testing
Whitebox testingOana Feidi
 
Agile vs Iterative vs Waterfall models
Agile vs Iterative vs Waterfall models Agile vs Iterative vs Waterfall models
Agile vs Iterative vs Waterfall models Marraju Bollapragada V
 
White Box Testing And Control Flow & Loop Testing
White Box Testing And Control Flow & Loop TestingWhite Box Testing And Control Flow & Loop Testing
White Box Testing And Control Flow & Loop TestingAnkit Mulani
 
Project Management
Project ManagementProject Management
Project Managementm g
 
Verification and Validation in Manual Testing
Verification and Validation in Manual TestingVerification and Validation in Manual Testing
Verification and Validation in Manual TestingBollapalli Vasundhara
 
Software testing metrics
Software testing metricsSoftware testing metrics
Software testing metricsDavid O' Connor
 
Test Automation Strategies For Agile
Test Automation Strategies For AgileTest Automation Strategies For Agile
Test Automation Strategies For AgileNaresh Jain
 

La actualidad más candente (20)

Test Case Design and Technique
Test Case Design and TechniqueTest Case Design and Technique
Test Case Design and Technique
 
ISTQB - What's testing
ISTQB - What's testingISTQB - What's testing
ISTQB - What's testing
 
Software development life cycle yazılım geliştirme yaşam döngüsü
Software development life cycle   yazılım geliştirme yaşam döngüsüSoftware development life cycle   yazılım geliştirme yaşam döngüsü
Software development life cycle yazılım geliştirme yaşam döngüsü
 
Test Automation Strategy
Test Automation StrategyTest Automation Strategy
Test Automation Strategy
 
Automotive testing
Automotive testingAutomotive testing
Automotive testing
 
Test automation framework
Test automation frameworkTest automation framework
Test automation framework
 
Automated Testing with Agile
Automated Testing with AgileAutomated Testing with Agile
Automated Testing with Agile
 
Test case design
Test case designTest case design
Test case design
 
Software Testing
Software TestingSoftware Testing
Software Testing
 
Software development plan template
Software development plan templateSoftware development plan template
Software development plan template
 
Project Management: Business Case
Project Management: Business CaseProject Management: Business Case
Project Management: Business Case
 
Test Process Maturity Measurement and Related Measurements
Test Process Maturity Measurement and Related MeasurementsTest Process Maturity Measurement and Related Measurements
Test Process Maturity Measurement and Related Measurements
 
Whitebox testing
Whitebox testingWhitebox testing
Whitebox testing
 
Agile vs Iterative vs Waterfall models
Agile vs Iterative vs Waterfall models Agile vs Iterative vs Waterfall models
Agile vs Iterative vs Waterfall models
 
White Box Testing And Control Flow & Loop Testing
White Box Testing And Control Flow & Loop TestingWhite Box Testing And Control Flow & Loop Testing
White Box Testing And Control Flow & Loop Testing
 
Project Management
Project ManagementProject Management
Project Management
 
Verification and Validation in Manual Testing
Verification and Validation in Manual TestingVerification and Validation in Manual Testing
Verification and Validation in Manual Testing
 
Test plan
Test planTest plan
Test plan
 
Software testing metrics
Software testing metricsSoftware testing metrics
Software testing metrics
 
Test Automation Strategies For Agile
Test Automation Strategies For AgileTest Automation Strategies For Agile
Test Automation Strategies For Agile
 

Destacado

Степан Максимчук: “Effective Test Design Techniques”
Степан Максимчук: “Effective Test Design Techniques”Степан Максимчук: “Effective Test Design Techniques”
Степан Максимчук: “Effective Test Design Techniques”Provectus
 
Test design techniques
Test design techniquesTest design techniques
Test design techniquesPragya Rastogi
 
Test Coverage: An Art and a Science
Test Coverage: An Art and a ScienceTest Coverage: An Art and a Science
Test Coverage: An Art and a ScienceTeamQualityPro
 
Effective software project planning and scheduling
Effective software project planning and schedulingEffective software project planning and scheduling
Effective software project planning and schedulingNagaraja Gundappa
 
Test design techniques
Test design techniquesTest design techniques
Test design techniquesBipul Roy Bpl
 
Test design techniques
Test design techniquesTest design techniques
Test design techniquesOksana
 
Test design techniques: Structured and Experienced-based techniques
Test design techniques: Structured and Experienced-based techniquesTest design techniques: Structured and Experienced-based techniques
Test design techniques: Structured and Experienced-based techniquesKhuong Nguyen
 
Design Test Case Technique (Equivalence partitioning And Boundary value analy...
Design Test Case Technique (Equivalence partitioning And Boundary value analy...Design Test Case Technique (Equivalence partitioning And Boundary value analy...
Design Test Case Technique (Equivalence partitioning And Boundary value analy...Ryan Tran
 

Destacado (10)

Степан Максимчук: “Effective Test Design Techniques”
Степан Максимчук: “Effective Test Design Techniques”Степан Максимчук: “Effective Test Design Techniques”
Степан Максимчук: “Effective Test Design Techniques”
 
Test design techniques
Test design techniquesTest design techniques
Test design techniques
 
Test Coverage: An Art and a Science
Test Coverage: An Art and a ScienceTest Coverage: An Art and a Science
Test Coverage: An Art and a Science
 
Effective software project planning and scheduling
Effective software project planning and schedulingEffective software project planning and scheduling
Effective software project planning and scheduling
 
Test design techniques
Test design techniquesTest design techniques
Test design techniques
 
Test design techniques
Test design techniquesTest design techniques
Test design techniques
 
Test design techniques
Test design techniquesTest design techniques
Test design techniques
 
Test cases
Test casesTest cases
Test cases
 
Test design techniques: Structured and Experienced-based techniques
Test design techniques: Structured and Experienced-based techniquesTest design techniques: Structured and Experienced-based techniques
Test design techniques: Structured and Experienced-based techniques
 
Design Test Case Technique (Equivalence partitioning And Boundary value analy...
Design Test Case Technique (Equivalence partitioning And Boundary value analy...Design Test Case Technique (Equivalence partitioning And Boundary value analy...
Design Test Case Technique (Equivalence partitioning And Boundary value analy...
 

Similar a Whitepaper Test Case Design and Testing Techniques- Factors to Consider

Software testing & Quality Assurance
Software testing & Quality Assurance Software testing & Quality Assurance
Software testing & Quality Assurance Webtech Learning
 
Some Commonly Asked Question For Software Testing
Some Commonly Asked Question For Software TestingSome Commonly Asked Question For Software Testing
Some Commonly Asked Question For Software TestingKumari Warsha Goel
 
Generating Test Cases
Generating Test CasesGenerating Test Cases
Generating Test CasesVivekRajawat9
 
Aim (A).pptx
Aim (A).pptxAim (A).pptx
Aim (A).pptx14941
 
Object Oriented Testing(OOT) presentation slides
Object Oriented Testing(OOT) presentation slidesObject Oriented Testing(OOT) presentation slides
Object Oriented Testing(OOT) presentation slidesPunjab University
 
Manual Testing Interview Questions & Answers.docx
Manual Testing Interview Questions & Answers.docxManual Testing Interview Questions & Answers.docx
Manual Testing Interview Questions & Answers.docxssuser305f65
 
www.tutorialsbook.com presents Manual testing
www.tutorialsbook.com presents Manual testingwww.tutorialsbook.com presents Manual testing
www.tutorialsbook.com presents Manual testingTutorials Book
 
Fundamental test process (TESTING IMPLEMENTATION SYSTEM)
Fundamental test process (TESTING IMPLEMENTATION SYSTEM)Fundamental test process (TESTING IMPLEMENTATION SYSTEM)
Fundamental test process (TESTING IMPLEMENTATION SYSTEM)Putri nadya Fazri
 

Similar a Whitepaper Test Case Design and Testing Techniques- Factors to Consider (20)

Testing
TestingTesting
Testing
 
Stlc phases.
Stlc phases.Stlc phases.
Stlc phases.
 
Software testing & Quality Assurance
Software testing & Quality Assurance Software testing & Quality Assurance
Software testing & Quality Assurance
 
Test cases
Test casesTest cases
Test cases
 
L software testing
L   software testingL   software testing
L software testing
 
Some Commonly Asked Question For Software Testing
Some Commonly Asked Question For Software TestingSome Commonly Asked Question For Software Testing
Some Commonly Asked Question For Software Testing
 
Quality Assurance and Testing services
Quality Assurance and Testing servicesQuality Assurance and Testing services
Quality Assurance and Testing services
 
Generating Test Cases
Generating Test CasesGenerating Test Cases
Generating Test Cases
 
Aim (A).pptx
Aim (A).pptxAim (A).pptx
Aim (A).pptx
 
Testing overview
Testing overviewTesting overview
Testing overview
 
Object Oriented Testing(OOT) presentation slides
Object Oriented Testing(OOT) presentation slidesObject Oriented Testing(OOT) presentation slides
Object Oriented Testing(OOT) presentation slides
 
Manual Testing Interview Questions & Answers.docx
Manual Testing Interview Questions & Answers.docxManual Testing Interview Questions & Answers.docx
Manual Testing Interview Questions & Answers.docx
 
www.tutorialsbook.com presents Manual testing
www.tutorialsbook.com presents Manual testingwww.tutorialsbook.com presents Manual testing
www.tutorialsbook.com presents Manual testing
 
Stlc&Vmodel Ppt
Stlc&Vmodel PptStlc&Vmodel Ppt
Stlc&Vmodel Ppt
 
stlc
stlcstlc
stlc
 
SOFTWARE TESTING
SOFTWARE TESTINGSOFTWARE TESTING
SOFTWARE TESTING
 
Fundamental test process (TESTING IMPLEMENTATION SYSTEM)
Fundamental test process (TESTING IMPLEMENTATION SYSTEM)Fundamental test process (TESTING IMPLEMENTATION SYSTEM)
Fundamental test process (TESTING IMPLEMENTATION SYSTEM)
 
stlc
stlcstlc
stlc
 
CTFL chapter 05
CTFL chapter 05CTFL chapter 05
CTFL chapter 05
 
System testing
System testingSystem testing
System testing
 

Más de RapidValue

How to Build a Micro-Application using Single-Spa
How to Build a Micro-Application using Single-SpaHow to Build a Micro-Application using Single-Spa
How to Build a Micro-Application using Single-SpaRapidValue
 
Play with Jenkins Pipeline
Play with Jenkins PipelinePlay with Jenkins Pipeline
Play with Jenkins PipelineRapidValue
 
Accessibility Testing using Axe
Accessibility Testing using AxeAccessibility Testing using Axe
Accessibility Testing using AxeRapidValue
 
Guide to Generate Extent Report in Kotlin
Guide to Generate Extent Report in KotlinGuide to Generate Extent Report in Kotlin
Guide to Generate Extent Report in KotlinRapidValue
 
Automation in Digital Cloud Labs
Automation in Digital Cloud LabsAutomation in Digital Cloud Labs
Automation in Digital Cloud LabsRapidValue
 
Microservices Architecture - Top Trends & Key Business Benefits
Microservices Architecture -  Top Trends & Key Business BenefitsMicroservices Architecture -  Top Trends & Key Business Benefits
Microservices Architecture - Top Trends & Key Business BenefitsRapidValue
 
Uploading Data Using Oracle Web ADI
Uploading Data Using Oracle Web ADIUploading Data Using Oracle Web ADI
Uploading Data Using Oracle Web ADIRapidValue
 
Appium Automation with Kotlin
Appium Automation with KotlinAppium Automation with Kotlin
Appium Automation with KotlinRapidValue
 
Build UI of the Future with React 360
Build UI of the Future with React 360Build UI of the Future with React 360
Build UI of the Future with React 360RapidValue
 
Python Google Cloud Function with CORS
Python Google Cloud Function with CORSPython Google Cloud Function with CORS
Python Google Cloud Function with CORSRapidValue
 
Real-time Automation Result in Slack Channel
Real-time Automation Result in Slack ChannelReal-time Automation Result in Slack Channel
Real-time Automation Result in Slack ChannelRapidValue
 
Automation Testing with KATALON Cucumber BDD
Automation Testing with KATALON Cucumber BDDAutomation Testing with KATALON Cucumber BDD
Automation Testing with KATALON Cucumber BDDRapidValue
 
How to Implement Micro Frontend Architecture using Angular Framework
How to Implement Micro Frontend Architecture using Angular FrameworkHow to Implement Micro Frontend Architecture using Angular Framework
How to Implement Micro Frontend Architecture using Angular FrameworkRapidValue
 
Video Recording of Selenium Automation Flows
Video Recording of Selenium Automation FlowsVideo Recording of Selenium Automation Flows
Video Recording of Selenium Automation FlowsRapidValue
 
JMeter JMX Script Creation via BlazeMeter
JMeter JMX Script Creation via BlazeMeterJMeter JMX Script Creation via BlazeMeter
JMeter JMX Script Creation via BlazeMeterRapidValue
 
Migration to Extent Report 4
Migration to Extent Report 4Migration to Extent Report 4
Migration to Extent Report 4RapidValue
 
The Definitive Guide to Implementing Shift Left Testing in QA
The Definitive Guide to Implementing Shift Left Testing in QAThe Definitive Guide to Implementing Shift Left Testing in QA
The Definitive Guide to Implementing Shift Left Testing in QARapidValue
 
Data Seeding via Parameterized API Requests
Data Seeding via Parameterized API RequestsData Seeding via Parameterized API Requests
Data Seeding via Parameterized API RequestsRapidValue
 
Test Case Creation in Katalon Studio
Test Case Creation in Katalon StudioTest Case Creation in Katalon Studio
Test Case Creation in Katalon StudioRapidValue
 
How to Perform Memory Leak Test Using Valgrind
How to Perform Memory Leak Test Using ValgrindHow to Perform Memory Leak Test Using Valgrind
How to Perform Memory Leak Test Using ValgrindRapidValue
 

Más de RapidValue (20)

How to Build a Micro-Application using Single-Spa
How to Build a Micro-Application using Single-SpaHow to Build a Micro-Application using Single-Spa
How to Build a Micro-Application using Single-Spa
 
Play with Jenkins Pipeline
Play with Jenkins PipelinePlay with Jenkins Pipeline
Play with Jenkins Pipeline
 
Accessibility Testing using Axe
Accessibility Testing using AxeAccessibility Testing using Axe
Accessibility Testing using Axe
 
Guide to Generate Extent Report in Kotlin
Guide to Generate Extent Report in KotlinGuide to Generate Extent Report in Kotlin
Guide to Generate Extent Report in Kotlin
 
Automation in Digital Cloud Labs
Automation in Digital Cloud LabsAutomation in Digital Cloud Labs
Automation in Digital Cloud Labs
 
Microservices Architecture - Top Trends & Key Business Benefits
Microservices Architecture -  Top Trends & Key Business BenefitsMicroservices Architecture -  Top Trends & Key Business Benefits
Microservices Architecture - Top Trends & Key Business Benefits
 
Uploading Data Using Oracle Web ADI
Uploading Data Using Oracle Web ADIUploading Data Using Oracle Web ADI
Uploading Data Using Oracle Web ADI
 
Appium Automation with Kotlin
Appium Automation with KotlinAppium Automation with Kotlin
Appium Automation with Kotlin
 
Build UI of the Future with React 360
Build UI of the Future with React 360Build UI of the Future with React 360
Build UI of the Future with React 360
 
Python Google Cloud Function with CORS
Python Google Cloud Function with CORSPython Google Cloud Function with CORS
Python Google Cloud Function with CORS
 
Real-time Automation Result in Slack Channel
Real-time Automation Result in Slack ChannelReal-time Automation Result in Slack Channel
Real-time Automation Result in Slack Channel
 
Automation Testing with KATALON Cucumber BDD
Automation Testing with KATALON Cucumber BDDAutomation Testing with KATALON Cucumber BDD
Automation Testing with KATALON Cucumber BDD
 
How to Implement Micro Frontend Architecture using Angular Framework
How to Implement Micro Frontend Architecture using Angular FrameworkHow to Implement Micro Frontend Architecture using Angular Framework
How to Implement Micro Frontend Architecture using Angular Framework
 
Video Recording of Selenium Automation Flows
Video Recording of Selenium Automation FlowsVideo Recording of Selenium Automation Flows
Video Recording of Selenium Automation Flows
 
JMeter JMX Script Creation via BlazeMeter
JMeter JMX Script Creation via BlazeMeterJMeter JMX Script Creation via BlazeMeter
JMeter JMX Script Creation via BlazeMeter
 
Migration to Extent Report 4
Migration to Extent Report 4Migration to Extent Report 4
Migration to Extent Report 4
 
The Definitive Guide to Implementing Shift Left Testing in QA
The Definitive Guide to Implementing Shift Left Testing in QAThe Definitive Guide to Implementing Shift Left Testing in QA
The Definitive Guide to Implementing Shift Left Testing in QA
 
Data Seeding via Parameterized API Requests
Data Seeding via Parameterized API RequestsData Seeding via Parameterized API Requests
Data Seeding via Parameterized API Requests
 
Test Case Creation in Katalon Studio
Test Case Creation in Katalon StudioTest Case Creation in Katalon Studio
Test Case Creation in Katalon Studio
 
How to Perform Memory Leak Test Using Valgrind
How to Perform Memory Leak Test Using ValgrindHow to Perform Memory Leak Test Using Valgrind
How to Perform Memory Leak Test Using Valgrind
 

Último

Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfhans926745
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoffsammart93
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024The Digital Insurer
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 

Último (20)

Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdf
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 

Whitepaper Test Case Design and Testing Techniques- Factors to Consider

  • 1. Test Case Design and Testing Techniques Factors to Consider A RapidValue Solutions Whitepaper
  • 2. Content Executive Summary...................................................................................................................... Test Case Design and Testing Techniques..................................................................................... Test Analysis............................................................................................................................... Phases of Test Development........................................................................................................ Quality or Product Risk and Risk Based Testing............................................................................. 03 04 04 04 06 Types of Test Design Techniques................................................................................................. Choosing the Techniques - Factors to Consider............................................................................. Test Case Design Checklist.......................................................................................................... Conclusion................................................................................................................................. 06 09 10 12 02©RapidValue Solutions 02
  • 3. 03©RapidValue Solutions Executive Summary Software testing is an essential and important technique for assessing the quality of a particular software product/service. In software testing, test cases and scenarios play an inevitable and a pivotal role. A good strategic design and technique help to improve the quality of the software testing process. The process improves the quality of the product/service and ensures effectiveness. Software testing is the process of analyzing a software item to know the differences between the existing and required conditions (bugs).Testing helps to evaluate the features of the software, to ensure it is free of bug. It is an activity that is carried out in co-ordinance with the development cycle and before the deployment. This paper provides information about test case design activities, test analysis, quality risks, testing techniques, phases of test development. The paper also, explains the factors that need to be considered while choosing the right testing techniques and provides a checklist of test cases based on our rich experience of testing mobile apps.
  • 4. 04©RapidValue Solutions 04 Test Case Design and Testing Techniques Test design is an art that has interesting techniques associated with it, which make it effective and useful for testing. Many people, when creating a test plan or writing the test case, fail to decipher what to test in a given cycle or what not to test in a given project. When you are checking the parameters that are not be tested, one must ensure that the requirement which is not testable by testers must be addressed here. Test Analysis Once the test planning is completed, the test analysis and design in software testing life cycle need to be carried out. As the first step, you need to schedule all the test-basis. Test-basis is all the requirements and design specification such as network architecture, system architecture. All the documents that help in testing must be reviewed when performing the test analysis. Based on the review of test basis, you need to evaluate testability of the test basis and objects. Identify and prioritize test conditions, test requirements, or test objectives and required test data, based on analysis of test items. Once the test condition has been ascertained, you can start prioritizing high-level test cases. Writing high-level test cases is kind of a pseudo test case design that means the test cases that do not have any test data. For example, while writing a test case for a login screen in an application or entering valid username and password, the user must go to the login screen, not writing the test data for username and password. In analysis and design phase, you have to focus on high level test cases, which are logical test cases. In this phase, you have to set the test environment that is based on the application domain (healthcare, social, banking etc.). Another important aspect is identifying infrastructure and testing tools. In case of mobile application testing, you need to select the device model, version and screen resolutions. Once you have identified the infrastructure and tools, create bi-directional traceability between test cases and test basis. Phases of Test Development Test development takes place in the following phases: QUALITY RISK ANALYSIS HIGH-LEVEL TEST DESIGN LOW-LEVEL TEST DESIGN
  • 5. 03©RapidValue Solutions 05 Once the quality risk analysis is completed, you need to work on a high-level test design and eventually, move on to a low-level test design. The input to risk analysis can be functional specification, system specification and output can be high-level test plan and risk analysis document. All the output from risk analysis goes as input to the high-level test design. Output from high-level test design is high-level test design document, logical test cases; all the documents serve as input to low-level test design. Low-level test design is characterized by a lot of test cases, test suites and test design documents. Quality risk analysis. In quality risk analysis, identify all risks in the system, using risk analysis techniques, like informal risk analysis technique (functionality, data quality, error handling and recovery, performance, localization, usability etc.). All risks must be noted and covered in high-level and low-level test design. Also, you can use formal risk analysis techniques like ISO9126. (It explains the major six categories of system risk and sub-categories). High-level test Design. In high-level test design, create test suites for all quality risk categories that are identified. During risk analysis, make sure to cover every risk category, with at least one test suite. You must trace every risk with the test suite. Sl. no. Module Priority Test Steps Expected Result Actual Result RemarksStatus Test Case ID Scenario/ Test Case Description Defect ID Raised Build Version 1 TC_001 Login P1 Verify the successful login with google account 1. Install the application from app store. Once after successful validation of email and password the user should be able to view the mail in the inbox. Same as expected Pass v1.27.18 1454 2. Tap icon from the list. 3. Tap to sign in with Google button. 4. Enter Valid email id and password. 5. Tap to sign in. Functional Test Cases Fig.1: Sample test case design template
  • 6. 03 ©RapidValue Solutions 06 SPECIFICATION-BASED TECHNIQUE STRUCTURE-BASED TECHNIQUE EXPERIENCE-BASED TECHNIQUE Quality or Product Risk and Risk Based Testing Risk is something that can result into undesirable consequences. The level of risk can be determined by likelihood and impact. With experience, some of the risk can be mitigated, but not all. In quality or product risk, there is a possibility that the system will fail to satisfy the customers, users, or other stakeholders. A set of possible bugs are behind the quality risk. Risk based testing reduces quality risk throughout the project, when identified, and assesses the risk, and guides the test process, using risk. More knowledge about risk helps to answer key testing questions. Ideally, risk based testing is part of a larger risk management approach. Once you identify the risk then assign the level of risk; only separate risk items, when necessary, to distinguish between different levels of risk. You need to think about technical and business risk; impact of technical risk on system and business risk on users. Testing, follow-up and re-alignment of risk analysis are mandatory with regard to key project milestone. Types of Test Design Techniques There are three main types of test design techniques. Specification-based technique is, also, called black-box technique. In this technique, you create tests, primarily, by analysis of the test basis and tracing the bugs in order to know how the system behaves. One of the basic specification-based techniques used is equivalence partitioning technique. In equivalence partitioning, divide the inputs, outputs, behaviors and environments into classes. Define, at least, one test case in each partition, or use boundary values in partitions that are in ranges. Tests can be designed to cover all valid and invalid partitions. Second technique in specification-based is boundary value analysis. Boundary value analysis is the refinement of equivalence partitioning that selects the edges or end-points of each partition for testing. Equivalence partitioning looks for bugs in the code that handles each equivalent class. Boundary values are members of equivalence classes that, also, look for bugs in the definition of the edges. Boundary value technique can be applied when the elements of the equivalence partition are ordered. In non-functional testing, you can use non-functional boundaries.
  • 7. ©RapidValue Solutions 07 Use case testing is, typically, used when you are about to enter UAT stage, at the end of the system testing. In this testing, you use the use cases or business scenarios for end to end systems’ testing. Use case has preconditions and post conditions to be met. Use cases have main flows, alternative flows and sometimes, exceptional flows. Use case testing uncovers defects in process flows during real world use of system. Structure-based technique is, also, called white-box technique. The key concepts include code coverage, statement and decision coverage, and control-flow test design technique. Structure-based tests are based on how the system works inside; which helps to determine and achieve a level of coverage of control flows based on code analysis. Data flows, based on code and data analysis, also determine and achieve a level of coverage of interfaces, classes, call flows, and the like, based on APIs, system design etc. Different levels of code coverage include: 1. Statement coverage: every statement executed. 2. Branch coverage or decision coverage: every decision taken. 3. Condition coverage: each condition evaluated, both true and false. 4. Multiple condition coverage: every combination of true and false conditions evaluated. 5. Loop coverage: all loop paths taken zero, once, and multiple times. Experience-based technique is based on the tester’s skill, perception, experience with similar applications, and experience with similar technologies. In this technique, tests are often, created during the test execution, that is, test strategy is dynamic. Examples include error guessing, bug hunting, breaking applications based on checklists, and exploratory testing. Testing experience provides much more to understand the scenario that helps to improve the experience-based testing on different applications. Sl. no. Description To be Implemented Pilot Release Release I Release II Release III Appropriate client icon is displayed. Click on application from device launches application. Alignment of pages in both the views (portrait and landscape). Images are properly displayed/present/in the contents view. Zooming functionality of the pages/images. Search functionality. Validate fields in 'Sign In'/'Sign Up' through 'Settings' option. Advertisements images/videos are displayed properly in app. Forward and backward swiping is consistently working. Crash encountered during swiping, zooming and searching. Text in the buttons properly displayed. Check for duplication of contents in the bookmark page. 1 2 3 4 5 6 7 8 9 10 11 12 * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
  • 8. ©RapidValue Solutions 08 Defects Based on Priority Defects Based on Status Fig. 2: Sample test execution dashboard UI Test Cases Functional Test Cases NFR Test Cases 1 0.9 0.8 0.7 0.6 0.5 0.4 0.3 0.2 0.1 0 Pass Failed NotTested Hold/Blocked Total 1 0.8 0.6 0.4 0.2 0 Urgent(P1) High (P2) M edium (P3) Low (P4) Open Closed ClosedOpen Urgent (P1) High (P2) 5 3 7 2 3 5 9 1 7 2 3 5 9 1 5 3 Medium (P3) Priority Severity Low (P4) Critical Major Moderate Minor Testing Status Testing Status UI Test Cases Functional Test Cases NFR Test Cases Pass Failed Not Tested On Hold/Blocked Total 2 3 5 9 1 5 3 7 2 3 2 3 5 9 1
  • 9. 03©RapidValue Solutions 0309 Choosing the Techniques - Factors to Consider Choosing the right test technique depends on the following factors: Type of system or software application. The design techniques, that are chosen, will depend on the type of software application or system. Basically, techniques are chosen related to the application type, mainly domain of the application, like finance, social media, healthcare etc. Also, you need to categorize mobile or web applications. Regulatory standards. Regulatory standards are common testing standards approved, internationally. Selection of techniques, also, depends on the standard of testing that is followed in the IT industries. Customer requirements. Selection of techniques is also, based on the customer requirements (sometimes they do not provide any requirement, in such a scenario you have to choose the experience based approaches). The techniques may vary, based on the customer requirements. Level and type of risk. Based on the risk during the quality analysis phase, you have to choose the right techniques. Risks may include lack of requirement, equipment or anything similar that affects the quality. There can be both, high-level and low-level design techniques. Test objectives. Test objectives are important aspects that give a clear idea about the scope of the testing activities. Based on that, you can select appropriate techniques. Documentation or requirement. Selection of techniques depends on the availability of test documents like requirement document, analysis report, design document etc. Tester’s skill and knowledge. This factor is quite significant and plays a pivotal role in the selection of experience-based technique. The knowledge of the tester, his/her perception of the application and experience on test execution, to figure-out the defects, help to make the product a quality one. Time and budget. Both, time and budget, are critical factors while choosing the right design technique. Some projects are short-term and some are long-term. Based on the project you need to choose techniques. You need to also consider how much budget is allotted for the project. For small budgets, cost-effective approach should be taken. Application development life cycle. The application development life cycle has different stages, parallel to testing stages. Different stages of development and testing require different techniques. 1. 2. 3. 4. 5. 6. 7. 8. 9.
  • 10. 03©RapidValue Solutions 0310 Previous experience on types of defects tracked. This is kind of user experience on defects that he/she had faced in testing life cycle. Further, he/she can replicate the same situation and catch the defects, encountered previously, from his/her experience. This is, also, a type of experience based technique. 10. Test Case Design Checklist Creating an exhaustive checklist having test cases covering all the possible scenarios and tracking it throughout the project lifecycle would help you achieve the optimal software quality. Here is a sample checklist of test cases, which could be considered while testing a mobile app. Sl. no. Description To be Implemented Pilot Release Release I Release II Release III Appropriate client icon is displayed. Click on application from device launches application. Alignment of pages in both the views (portrait and landscape). Images are properly displayed/present/in the contents view. Zooming functionality of the pages/images. Search functionality. Validate fields in 'Sign In'/'Sign Up' through 'Settings' option. Advertisements images/videos are displayed properly in app. Forward and backward swiping is consistently working. Crash encountered during swiping, zooming and searching. Text in the buttons properly displayed. Check for duplication of contents in the bookmark page. Crash encountered while clicking on images simultaneously. Jittering of the images/contents while scrolling. Check for the 'Application Name'(Style/Font/Color/Size). Type of animation implemented upon click on the buttons. Virtual keyboard displayed when the user click on any text fields. Validation in the password field. Check that the URL displayed in any page should display as link. Check that any website link should be easy to click. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
  • 11. 03© RapidValue Solutions 0311 Sl. no. Description To be Implemented Pilot Release Release I Release II Release III Appropriate client icon is displayed. Click on application from device launches application. Alignment of pages in both the views (portrait and landscape). Images are properly displayed/present/in the contents view. Zooming functionality of the pages/images. Search functionality. Validate fields in 'Sign In'/'Sign Up' through 'Settings' option. Advertisements images/videos are displayed properly in app. Forward and backward swiping is consistently working. Crash encountered during swiping, zooming and searching. Text in the buttons properly displayed. Check for duplication of contents in the bookmark page. Crash encountered while clicking on images simultaneously. Jittering of the images/contents while scrolling. Check for the 'Application Name'(Style/Font/Color/Size). Type of animation implemented upon click on the buttons. Virtual keyboard displayed when the user click on any text fields. Validation in the password field. Check that the URL displayed in any page should display as link. Check that any website link should be easy to click. Validate register properties. Call interrupt functionality. Check the record time for Audio/Video/Voice recorder if any. Download functionality if exists, works without any interruption. No crash during or after download functionality. Login/Logout functionality in Settings page. Correct username is displayed in the settings, after user login. Connectivity error message while downloading without Wi-Fi. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * Jittering of the images/contents while scrolling. Check for the 'Application Name'(Style/Font/Color/Size). Type of animation implemented upon click on the buttons. Virtual keyboard displayed when the user click on any text fields. Validation in the password field. Check that the URL displayed in any page should display as link. Check that any website link should be easy to click. Validate register properties. Call interrupt functionality. Check the record time for Audio/Video/Voice recorder if any. Download functionality if exists, works without any interruption. No crash during or after download functionality. Login/Logout functionality in Settings page. Correct username is displayed in the settings, after user login. Connectivity error message while downloading without Wi-Fi. Session expiry while the application is idle for a particular time limit. Progress/ duration bar display while playing audio or video. 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
  • 12. 03©RapidValue Solutions 0312 Conclusion The process of test designing is of high priority. A poorly designed test will lead to improper testing of an application and thereby, yield test wrong and harmful results. This, in turn, will lead to the failure in identifying defects. As a consequence, an application, containing errors, may be released. There are various types of designing techniques and the challenge lies in selecting the right set of relevant test design techniques for the particular application. The different types of testing techniques have their own unique benefits. The use of any particular technique is considered, only, after much contemplation and by giving maximum emphasis on the type of application. This whitepaper is written by Sanoj Swaminathan, Technical Lead - Quality Assurance, RapidValue Solutions. If you’d like to learn more on test case designs and testing techniques, please reach out to us at contactus@rapidvaluesolutions.com . We’d be happy to hear from you.
  • 13. About RapidValue A global leader in digital transformation for enterprise providing end-to-end mobility, omni-channel, IoT and cloud solutions. Armed with a large team of experts in consulting, UX design, application development, integration and testing, along with experience delivering projects worldwide, in mobility and cloud, we offer a wide range of services across industry verticals. We deliver services to the world’s top brands, fortune 1000 companies, Multinational companies and emerging start-ups. We have www.rapidvaluesolutions.com www.rapidvaluesolutions.com/blog +1 877.643.1850 contactus@rapidvaluesolutions.com July 2016 offices in the United States, the United Kingdom and India.