SlideShare a Scribd company logo
Software Testing Fundamentals




   Module 1: Introduction into Software Testing




                  Software Testing Artifacts
Software Testing Artifacts

                                                  Test Cases




2    ® 2011. EPAM Systems. All rights reserved.
Software Testing Definition
Test Case – a set of test inputs, execution conditions
and expected results developed for a particular
objective, such as to exercise a particular program path
or to verify compliance with a specific requirement.




3                ® 2011. EPAM Systems. All rights reserved.
Conclusion
1.   Start with obvious and simple tests. Test the program
     with easy-to-pass values that will be taken as serious issues
     if the program fails.
2.   Look for more powerful tests. How to break it? Once
     the program can survive the easy tests, put on your thinking
     cap and look systematically for challenges.
3.   Pick boundary conditions. There will be too many good
     tests.You need a strategy for picking and choosing.
4.   Do some exploratory testing. Run new tests every week,
     from the first week to the last week of the project.
5.   Learn from experience.

 4                    ® 2011. EPAM Systems. All rights reserved.
Software Testing Artifacts

                                  Writing Down Test Cases




5    ® 2011. EPAM Systems. All rights reserved.
Writing Down Test Cases
       Introduction into Test Cases
         What is it?
         Why do we need them?
         Templates to use
       Writing Good Tests Cases
       Test scenarios




    6                      ® 2011. EPAM Systems. All rights reserved.
Test Case: What is it?
IEEE Standard 610 (1990) defines test case as follows:
A set of test inputs, execution conditions, and expected results
developed for a particular objective, such as to exercise a
particular program path or to verify compliance with a specific
requirement.

(IEEE Std 829-1983) - Documentation specifying inputs, predicted
results, and a set of execution conditions for a test item.




 7                    ® 2011. EPAM Systems. All rights reserved.
Test Cases: Why do we need them?
             Why should we spend time writing our tests down?
                   We could run so many tests instead!


With test cases we can:
     •   Plan, only then run -> structured and systematic approach-> less
         bugs missed (!)
     •   Store information
     •   Test the Requirements documentation before application is available
     •   Accelerate regression testing
     •   Pass information to new members of the team
     •   Remember ourselves what tests we„ve designed half a year ago
     •   Reuse “checklists” between projects
     •   Track testing progress (X% tests executed,Y% tests passed (failed),
         Z% requirements covered)


 8                          ® 2011. EPAM Systems. All rights reserved.
Software Testing Artifacts

    Relationship of Test Documents to Testing Process




9      ® 2011. EPAM Systems. All rights reserved.
Functional Testing Workflow
Software Testing Stages

                Test                            Test
               Designing                      Executing




                 Test                        Analyze &
               Planning                      Reporting
  Initiation


                                                                 Completion

 10                 ® 2011. EPAM Systems. All rights reserved.
Relationship of Test
                                                  Documents to
                                                  Testing Process
                                                  Test Plan

                                                  Test Specification

                                                     Test Design Specification
                                                     Test Case Specification
                                                     Test Procedure Specification

                                                  Test Reporting

                                                     Test Item Transmittal Report
                                                     Test Log
                                                     Test Incident Report
                                                     Test Summary Report




11   ® 2011. EPAM Systems. All rights reserved.
Software Testing Artifacts

                                               Test Specification




12    ® 2011. EPAM Systems. All rights reserved.
Software Testing Artifacts

                               Test Specification – IEEE 829




13    ® 2011. EPAM Systems. All rights reserved.
Test Specification IEEE829


Test Design Specification

Test Case Specification

Test Procedure Specification
14          ® 2011. EPAM Systems. All rights reserved.
Test Design Specification
Purpose
 To specify refinements of the test approach and to identify the
 features to be tested by this design and its associated tests.

Outline
 a) Test design specification identifier;
 b) Features to be tested;
 c) Approach refinements;
 d) Test identification;
 e) Feature pass/fail criteria.



15                    ® 2011. EPAM Systems. All rights reserved.
Test Case Specification
Purpose
 To define a test case identified by a test design specification.


Outline
 a) Test case specification identifier;
 b) Test items;
 c) Input specifications;
 d) Output specifications;
 e) Environmental needs;
 f) Special procedural requirements;
 g) Intercase dependencies.

16                   ® 2011. EPAM Systems. All rights reserved.
Test Procedure Specification
Purpose
 To specify the steps for executing a set of test cases or, more
 generally, the steps used to analyze a software item in order to
 evaluate a set of features.


Outline
 a) Test procedure specification identifier.
 b) Purpose;
 c) Special requirements;
 d) Procedure steps.



17                   ® 2011. EPAM Systems. All rights reserved.
Software Testing Artifacts

                                   Test Specification – EPAM




18    ® 2011. EPAM Systems. All rights reserved.
Test Case Anatomy
    We want to document a test. What information should
     we record?
            Steps
            Expected results
            Passed or failed
            Title
            Some ID
            Related requirement
            Priority (Smoke, Critical, Extended; or A, B, C, D or any
             other)
            Module, submodule
            Initial data we need for test
            Author, last time run, actual result, related bug

    19                      ® 2011. EPAM Systems. All rights reserved.
EPAM Testthat is
 Priority Requirement Case: Title – summary what
                             Excel Template result
                                                 Expected
  (low)   tested                    we are testing                      after each step

ARC_ L R25 Save Upload Upload, file name with 1. Upload dialog appears Not
C10.1       item file  special symbols               2. Browser's "choose file" tested
95                     Setup: On your computer dialog appears
                       create file named `~!$^()- 3. "choose file" dialog
 Test                  _+[]{}',.html , not empty closes, `~!$^()- Status in the
 Case ID               1. Click Upload button        _+[]{}',..html appears in
                                                                          build
                                            Setup
                       2. Click Browse button the FROM field. (passed/failed/no
                       3. Select `~!$^()-            4. Upload dialog closes,
                                                                          t tested)
                       _+[]{}',..html file and click file name from the TO
                       Open.                         field is substituted in the
         Module and    4. Click upload               long description file name
         Submodule     5. Click Add To List          field. File contents is
                                                     shown below.
                                                     5. Attachment is added


                                Steps to perform
 20                        ® 2011. EPAM Systems. All rights reserved.
Test Scenarios (Test Suite)

    Test scenario = a set of test cases for some purpose.

    Good test scenario flows along some logic - typical usage,
     convenience to test, by modules.




    21                  ® 2011. EPAM Systems. All rights reserved.
Writing Test Scenarios

    Choose a part, use grouping.
    Write Smoke and Critical scenarios.
    Move from simple tests to more complex.
    Organize scenarios logically (do not use test cases from other
     parts, scenario should be convenient to pass).




    22                  ® 2011. EPAM Systems. All rights reserved.
EPAM Test Cases Template
                                                      Title page
                                                   Smoke test page
                  Excel Groups by
                  features

                                                              Author(s)


                               Pages for Smoke,
                               Critical, Extended test
                               levels                         Automatic
                                                   History of changes
                                                              Statistics



        Last changes are
     Legend
        marked in blue
23                         ® 2011. EPAM Systems. All rights reserved.
Test Scenarios in PMC
                                    Run Scenario




                            Scenarios

                                          Test Cases



                                                   Test cases list
     Run Test
     Case



24              ® 2011. EPAM Systems. All rights reserved.
Writing Test scenarios… continuation
    One test for one check.
    Titles reveal the main point of tests.
    Preparation (initial data, that can be used while
     passing the scenario).
    Do not repeat exact steps to achieve the same result
     (can be given in the first test only).
    Alternate cases giving one result with cases giving
     another.



    25               ® 2011. EPAM Systems. All rights reserved.
Several tricks to write test cases
    Copy-paste.
    Write questions right into test case and mark with a color: if
     you still have question on any requirement and you cannot
     write a test case definitely, you can mark the issue with red
     and write comments.
    Use several colors to mark new (just added), old test cases,
     test cases with questions.
    Cases should have a good logical structure: use Excel grouping.
    Create a history for the file with test cases.




    26                  ® 2011. EPAM Systems. All rights reserved.
Software Testing Artifacts

                         How To Create Good Test Case?




27    ® 2011. EPAM Systems. All rights reserved.
Good Test Case: Conclusion
An excellent test case satisfies the following criteria:
     Reasonable probability of catching an error.
     Exercises an area of interest.
     Does interesting things.
     Doesn‟t do unnecessary things.
     Neither too simple nor too complex.
     Not redundant with other tests.
     Makes failures obvious.
     Allows isolation and identification of errors.

What else?


 28                        ® 2011. EPAM Systems. All rights reserved.
Steps to Create Test Cases
1. Start  early – before the first build.
2. Break application into functions/modules to be
   tested.
3. Write checklist for each function/area.
4. Add any questions, as you go.
5. Fill in details, resolve questions.
6. Add cosmetics – for better reading.
7. Get review from other tester, developer, customer.
8. Update as soon as mistake is found.
9. Update as functionality changes.
 29               ® 2011. EPAM Systems. All rights reserved.
Step 1
Start early- before the first build

       What sources of information do we have at this time?
       What sources do we not have?

       You cannot see working application.
       Learn all sources of information you have, first (documents,
       people, etc).
       Your questions may find and correct serious holes in design.
       Test cases creation goes parallel with requirements review.

       You cannot predict all bugs.
       Design still may change.
  30                       ® 2011. EPAM Systems. All rights reserved.
Step 2
Break application into functions/modules to be tested




                              Break into pieces
                              until each piece is simple enough
                              to list all tests




 31                      ® 2011. EPAM Systems. All rights reserved.
Step 3
Write checklist for each function/area.


Easy to check that all tests included.
Easy to reorder.
Easy to see where to use copy-paste.
We separate 2 different kinds of work (thinking and writing).



Do not just copy requirements into cells.
1 line=1 test case.
If something is not clear – write a question right NOW.


 32                       ® 2011. EPAM Systems. All rights reserved.
Steps 4,5,6
Add any questions, as you go.
Fill in details, resolve questions.
Add cosmetics – for better reading.




Then use copy paste.




  33                     ® 2011. EPAM Systems. All rights reserved.
Step 7
Get review from other tester, developer, customer.


     Are some interesting tests missed?
     Are some tests redundant?
     Are test cases easy to understand by other person? Novice
      tester?
     Is it what customer expects?
     Are there any errors? (there is always at least one more )




     34                   ® 2011. EPAM Systems. All rights reserved.
Step 7
Get review from other tester, developer, customer.


     Another point of view (developer, marketing).
     It‟s hard to notice your own mistakes.
     Often we do not have some information.
     Developer can have another opinion; we can clarify before the
      code is created.
     Often getting review is not easy, but if done thoroughly, it is
      very useful.
     Raises standard for test cases.




     35                   ® 2011. EPAM Systems. All rights reserved.
Steps 8,9
Update as soon as mistake is found
Update as functionality changes

     Small corrections: do right now, until you forget!

     Big changes – you can find time for them:
      •   At the beginning new phase.
      •   At the end of a build cycle.
      •   Sudden free time due to build delay, etc.




     36                       ® 2011. EPAM Systems. All rights reserved.
Your Global Technology Outsourcing Partner




             Thanks for your attention




EPAM Systems, Inc.
http://www.epam.com

NTUU “KPI”
  EPAM POWER POINT TITLE
http://kpi.ua
  Sub Topic




                                                        ® 2011. EPAM Systems. All rights reserved.

More Related Content

PDF
Software Testing Principles
DOC
Test cases for testing mobile phone
PDF
Signal Handling in Linux
PPT
Android CTS training
PDF
Android IPC Mechanism
PPTX
Chapter 8 Operating Systems silberschatz : deadlocks
PPT
"Learning AOSP" - Android Hardware Abstraction Layer (HAL)
PDF
Introduction to Android Window System
Software Testing Principles
Test cases for testing mobile phone
Signal Handling in Linux
Android CTS training
Android IPC Mechanism
Chapter 8 Operating Systems silberschatz : deadlocks
"Learning AOSP" - Android Hardware Abstraction Layer (HAL)
Introduction to Android Window System

What's hot (20)

PPT
android activity
PPTX
Mobile application testing
PPTX
Kubernetes CRI containerd integration by Lantao Liu (Google)
PPTX
Android AIDL Concept
PPTX
Mobile application testing tutorial
PPTX
PDF
Embedded Android : System Development - Part IV (Android System Services)
PPTX
Socket programming in Java (PPTX)
PDF
Android Storage - Vold
PPT
Basic Guide to Manual Testing
PDF
API Testing
PPTX
Linux process management
PPT
Java basic
PPTX
Ppt full stack developer
PPTX
Mobile Application Testing Training Presentation
PDF
Low Level View of Android System Architecture
PDF
Explore Android Internals
PPTX
Introduction to Agile Testing
PPTX
PPTX
Android application development ppt
android activity
Mobile application testing
Kubernetes CRI containerd integration by Lantao Liu (Google)
Android AIDL Concept
Mobile application testing tutorial
Embedded Android : System Development - Part IV (Android System Services)
Socket programming in Java (PPTX)
Android Storage - Vold
Basic Guide to Manual Testing
API Testing
Linux process management
Java basic
Ppt full stack developer
Mobile Application Testing Training Presentation
Low Level View of Android System Architecture
Explore Android Internals
Introduction to Agile Testing
Android application development ppt
Ad

Viewers also liked (20)

PDF
01 software test engineering (manual testing)
PPTX
SECON'2016. Стахиевич Андрей, Selenide: используем listener-ы
PPT
Gray box testing
PDF
Test Documentation Based On Ieee829 155261
PDF
µServices Architecture @ EPAM WOW 2015
PPTX
Test design
PDF
Dynamic Stress Testing for an Insurance Company: Brian Rhoads, Practice Leade...
PPTX
Test Case Management with MTM 2013
PPTX
Qa documentation pp
DOC
All Pairs Testing Technique
PDF
Experiences in Software Testing (lecture slides)
PPTX
PCAOB Audit Alert #11: New Internal Control Testing Standards & Excel
PPT
Basic Database Testing
PDF
Amazon search test case document
DOC
كتاب المتلازمة الأيضية للدكتور موسى العنزي
PPTX
Panel 7 Fernando Vásquez Redlees
PDF
CIP Journal 1
PPT
Марина Львовна Москвина
01 software test engineering (manual testing)
SECON'2016. Стахиевич Андрей, Selenide: используем listener-ы
Gray box testing
Test Documentation Based On Ieee829 155261
µServices Architecture @ EPAM WOW 2015
Test design
Dynamic Stress Testing for an Insurance Company: Brian Rhoads, Practice Leade...
Test Case Management with MTM 2013
Qa documentation pp
All Pairs Testing Technique
Experiences in Software Testing (lecture slides)
PCAOB Audit Alert #11: New Internal Control Testing Standards & Excel
Basic Database Testing
Amazon search test case document
كتاب المتلازمة الأيضية للدكتور موسى العنزي
Panel 7 Fernando Vásquez Redlees
CIP Journal 1
Марина Львовна Москвина
Ad

Similar to Testing artifacts test cases (20)

PPT
Test automation principles, terminologies and implementations
PPT
ISTQB, ISEB Lecture Notes
PDF
03 test specification and execution
PDF
Software Testing Techniques
PPT
ISTQB / ISEB Foundation Exam Practice -1
PPT
NG_TEST_Presentation_0510
PPT
NGTEST_Presentation
PPT
NG_TEST_SR_Presentation
PDF
Test Automation and Keyword-driven testing af Brian Nielsen, CISS/AAU
PPTX
PPTX
Integration in component based technology
PPT
Automated Software Testing Framework Training by Quontra Solutions
PDF
Technical meeting automated testing with vs2010
PDF
Testival meetup 60_leveraging_the_power_of_your_testing_with_xray_20210112_v2
PDF
ICTSS 2010 - Iterative Software Testing Process for Scrum and Waterfall Projects
PPT
Justin Presentation PPT Upload
PPT
Tdd dev session
PDF
Planning & building scalable test infrastructure
PPTX
Object Oriented Testing
Test automation principles, terminologies and implementations
ISTQB, ISEB Lecture Notes
03 test specification and execution
Software Testing Techniques
ISTQB / ISEB Foundation Exam Practice -1
NG_TEST_Presentation_0510
NGTEST_Presentation
NG_TEST_SR_Presentation
Test Automation and Keyword-driven testing af Brian Nielsen, CISS/AAU
Integration in component based technology
Automated Software Testing Framework Training by Quontra Solutions
Technical meeting automated testing with vs2010
Testival meetup 60_leveraging_the_power_of_your_testing_with_xray_20210112_v2
ICTSS 2010 - Iterative Software Testing Process for Scrum and Waterfall Projects
Justin Presentation PPT Upload
Tdd dev session
Planning & building scalable test infrastructure
Object Oriented Testing

Recently uploaded (20)

PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
PDF
cuic standard and advanced reporting.pdf
PPTX
Understanding_Digital_Forensics_Presentation.pptx
PDF
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
PPT
“AI and Expert System Decision Support & Business Intelligence Systems”
PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
PPTX
MYSQL Presentation for SQL database connectivity
PDF
Shreyas Phanse Resume: Experienced Backend Engineer | Java • Spring Boot • Ka...
PDF
CIFDAQ's Market Insight: SEC Turns Pro Crypto
PDF
Per capita expenditure prediction using model stacking based on satellite ima...
PDF
Spectral efficient network and resource selection model in 5G networks
PDF
Empathic Computing: Creating Shared Understanding
PDF
Chapter 3 Spatial Domain Image Processing.pdf
PDF
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
PDF
KodekX | Application Modernization Development
PDF
Approach and Philosophy of On baking technology
PDF
NewMind AI Weekly Chronicles - August'25 Week I
PDF
Encapsulation theory and applications.pdf
PPTX
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
PDF
Machine learning based COVID-19 study performance prediction
Agricultural_Statistics_at_a_Glance_2022_0.pdf
cuic standard and advanced reporting.pdf
Understanding_Digital_Forensics_Presentation.pptx
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
“AI and Expert System Decision Support & Business Intelligence Systems”
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
MYSQL Presentation for SQL database connectivity
Shreyas Phanse Resume: Experienced Backend Engineer | Java • Spring Boot • Ka...
CIFDAQ's Market Insight: SEC Turns Pro Crypto
Per capita expenditure prediction using model stacking based on satellite ima...
Spectral efficient network and resource selection model in 5G networks
Empathic Computing: Creating Shared Understanding
Chapter 3 Spatial Domain Image Processing.pdf
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
KodekX | Application Modernization Development
Approach and Philosophy of On baking technology
NewMind AI Weekly Chronicles - August'25 Week I
Encapsulation theory and applications.pdf
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
Machine learning based COVID-19 study performance prediction

Testing artifacts test cases

  • 1. Software Testing Fundamentals Module 1: Introduction into Software Testing Software Testing Artifacts
  • 2. Software Testing Artifacts Test Cases 2 ® 2011. EPAM Systems. All rights reserved.
  • 3. Software Testing Definition Test Case – a set of test inputs, execution conditions and expected results developed for a particular objective, such as to exercise a particular program path or to verify compliance with a specific requirement. 3 ® 2011. EPAM Systems. All rights reserved.
  • 4. Conclusion 1. Start with obvious and simple tests. Test the program with easy-to-pass values that will be taken as serious issues if the program fails. 2. Look for more powerful tests. How to break it? Once the program can survive the easy tests, put on your thinking cap and look systematically for challenges. 3. Pick boundary conditions. There will be too many good tests.You need a strategy for picking and choosing. 4. Do some exploratory testing. Run new tests every week, from the first week to the last week of the project. 5. Learn from experience. 4 ® 2011. EPAM Systems. All rights reserved.
  • 5. Software Testing Artifacts Writing Down Test Cases 5 ® 2011. EPAM Systems. All rights reserved.
  • 6. Writing Down Test Cases  Introduction into Test Cases  What is it?  Why do we need them?  Templates to use  Writing Good Tests Cases  Test scenarios 6 ® 2011. EPAM Systems. All rights reserved.
  • 7. Test Case: What is it? IEEE Standard 610 (1990) defines test case as follows: A set of test inputs, execution conditions, and expected results developed for a particular objective, such as to exercise a particular program path or to verify compliance with a specific requirement. (IEEE Std 829-1983) - Documentation specifying inputs, predicted results, and a set of execution conditions for a test item. 7 ® 2011. EPAM Systems. All rights reserved.
  • 8. Test Cases: Why do we need them?  Why should we spend time writing our tests down?  We could run so many tests instead! With test cases we can: • Plan, only then run -> structured and systematic approach-> less bugs missed (!) • Store information • Test the Requirements documentation before application is available • Accelerate regression testing • Pass information to new members of the team • Remember ourselves what tests we„ve designed half a year ago • Reuse “checklists” between projects • Track testing progress (X% tests executed,Y% tests passed (failed), Z% requirements covered) 8 ® 2011. EPAM Systems. All rights reserved.
  • 9. Software Testing Artifacts Relationship of Test Documents to Testing Process 9 ® 2011. EPAM Systems. All rights reserved.
  • 10. Functional Testing Workflow Software Testing Stages Test Test Designing Executing Test Analyze & Planning Reporting Initiation Completion 10 ® 2011. EPAM Systems. All rights reserved.
  • 11. Relationship of Test Documents to Testing Process Test Plan Test Specification Test Design Specification Test Case Specification Test Procedure Specification Test Reporting Test Item Transmittal Report Test Log Test Incident Report Test Summary Report 11 ® 2011. EPAM Systems. All rights reserved.
  • 12. Software Testing Artifacts Test Specification 12 ® 2011. EPAM Systems. All rights reserved.
  • 13. Software Testing Artifacts Test Specification – IEEE 829 13 ® 2011. EPAM Systems. All rights reserved.
  • 14. Test Specification IEEE829 Test Design Specification Test Case Specification Test Procedure Specification 14 ® 2011. EPAM Systems. All rights reserved.
  • 15. Test Design Specification Purpose To specify refinements of the test approach and to identify the features to be tested by this design and its associated tests. Outline a) Test design specification identifier; b) Features to be tested; c) Approach refinements; d) Test identification; e) Feature pass/fail criteria. 15 ® 2011. EPAM Systems. All rights reserved.
  • 16. Test Case Specification Purpose To define a test case identified by a test design specification. Outline a) Test case specification identifier; b) Test items; c) Input specifications; d) Output specifications; e) Environmental needs; f) Special procedural requirements; g) Intercase dependencies. 16 ® 2011. EPAM Systems. All rights reserved.
  • 17. Test Procedure Specification Purpose To specify the steps for executing a set of test cases or, more generally, the steps used to analyze a software item in order to evaluate a set of features. Outline a) Test procedure specification identifier. b) Purpose; c) Special requirements; d) Procedure steps. 17 ® 2011. EPAM Systems. All rights reserved.
  • 18. Software Testing Artifacts Test Specification – EPAM 18 ® 2011. EPAM Systems. All rights reserved.
  • 19. Test Case Anatomy  We want to document a test. What information should we record?  Steps  Expected results  Passed or failed  Title  Some ID  Related requirement  Priority (Smoke, Critical, Extended; or A, B, C, D or any other)  Module, submodule  Initial data we need for test  Author, last time run, actual result, related bug 19 ® 2011. EPAM Systems. All rights reserved.
  • 20. EPAM Testthat is Priority Requirement Case: Title – summary what Excel Template result Expected (low) tested we are testing after each step ARC_ L R25 Save Upload Upload, file name with 1. Upload dialog appears Not C10.1 item file special symbols 2. Browser's "choose file" tested 95 Setup: On your computer dialog appears create file named `~!$^()- 3. "choose file" dialog Test _+[]{}',.html , not empty closes, `~!$^()- Status in the Case ID 1. Click Upload button _+[]{}',..html appears in build Setup 2. Click Browse button the FROM field. (passed/failed/no 3. Select `~!$^()- 4. Upload dialog closes, t tested) _+[]{}',..html file and click file name from the TO Open. field is substituted in the Module and 4. Click upload long description file name Submodule 5. Click Add To List field. File contents is shown below. 5. Attachment is added Steps to perform 20 ® 2011. EPAM Systems. All rights reserved.
  • 21. Test Scenarios (Test Suite)  Test scenario = a set of test cases for some purpose.  Good test scenario flows along some logic - typical usage, convenience to test, by modules. 21 ® 2011. EPAM Systems. All rights reserved.
  • 22. Writing Test Scenarios  Choose a part, use grouping.  Write Smoke and Critical scenarios.  Move from simple tests to more complex.  Organize scenarios logically (do not use test cases from other parts, scenario should be convenient to pass). 22 ® 2011. EPAM Systems. All rights reserved.
  • 23. EPAM Test Cases Template Title page Smoke test page Excel Groups by features Author(s) Pages for Smoke, Critical, Extended test levels Automatic History of changes Statistics Last changes are Legend marked in blue 23 ® 2011. EPAM Systems. All rights reserved.
  • 24. Test Scenarios in PMC Run Scenario Scenarios Test Cases Test cases list Run Test Case 24 ® 2011. EPAM Systems. All rights reserved.
  • 25. Writing Test scenarios… continuation  One test for one check.  Titles reveal the main point of tests.  Preparation (initial data, that can be used while passing the scenario).  Do not repeat exact steps to achieve the same result (can be given in the first test only).  Alternate cases giving one result with cases giving another. 25 ® 2011. EPAM Systems. All rights reserved.
  • 26. Several tricks to write test cases  Copy-paste.  Write questions right into test case and mark with a color: if you still have question on any requirement and you cannot write a test case definitely, you can mark the issue with red and write comments.  Use several colors to mark new (just added), old test cases, test cases with questions.  Cases should have a good logical structure: use Excel grouping.  Create a history for the file with test cases. 26 ® 2011. EPAM Systems. All rights reserved.
  • 27. Software Testing Artifacts How To Create Good Test Case? 27 ® 2011. EPAM Systems. All rights reserved.
  • 28. Good Test Case: Conclusion An excellent test case satisfies the following criteria:  Reasonable probability of catching an error.  Exercises an area of interest.  Does interesting things.  Doesn‟t do unnecessary things.  Neither too simple nor too complex.  Not redundant with other tests.  Makes failures obvious.  Allows isolation and identification of errors. What else? 28 ® 2011. EPAM Systems. All rights reserved.
  • 29. Steps to Create Test Cases 1. Start early – before the first build. 2. Break application into functions/modules to be tested. 3. Write checklist for each function/area. 4. Add any questions, as you go. 5. Fill in details, resolve questions. 6. Add cosmetics – for better reading. 7. Get review from other tester, developer, customer. 8. Update as soon as mistake is found. 9. Update as functionality changes. 29 ® 2011. EPAM Systems. All rights reserved.
  • 30. Step 1 Start early- before the first build What sources of information do we have at this time? What sources do we not have? You cannot see working application. Learn all sources of information you have, first (documents, people, etc). Your questions may find and correct serious holes in design. Test cases creation goes parallel with requirements review. You cannot predict all bugs. Design still may change. 30 ® 2011. EPAM Systems. All rights reserved.
  • 31. Step 2 Break application into functions/modules to be tested Break into pieces until each piece is simple enough to list all tests 31 ® 2011. EPAM Systems. All rights reserved.
  • 32. Step 3 Write checklist for each function/area. Easy to check that all tests included. Easy to reorder. Easy to see where to use copy-paste. We separate 2 different kinds of work (thinking and writing). Do not just copy requirements into cells. 1 line=1 test case. If something is not clear – write a question right NOW. 32 ® 2011. EPAM Systems. All rights reserved.
  • 33. Steps 4,5,6 Add any questions, as you go. Fill in details, resolve questions. Add cosmetics – for better reading. Then use copy paste. 33 ® 2011. EPAM Systems. All rights reserved.
  • 34. Step 7 Get review from other tester, developer, customer.  Are some interesting tests missed?  Are some tests redundant?  Are test cases easy to understand by other person? Novice tester?  Is it what customer expects?  Are there any errors? (there is always at least one more ) 34 ® 2011. EPAM Systems. All rights reserved.
  • 35. Step 7 Get review from other tester, developer, customer.  Another point of view (developer, marketing).  It‟s hard to notice your own mistakes.  Often we do not have some information.  Developer can have another opinion; we can clarify before the code is created.  Often getting review is not easy, but if done thoroughly, it is very useful.  Raises standard for test cases. 35 ® 2011. EPAM Systems. All rights reserved.
  • 36. Steps 8,9 Update as soon as mistake is found Update as functionality changes  Small corrections: do right now, until you forget!  Big changes – you can find time for them: • At the beginning new phase. • At the end of a build cycle. • Sudden free time due to build delay, etc. 36 ® 2011. EPAM Systems. All rights reserved.
  • 37. Your Global Technology Outsourcing Partner Thanks for your attention EPAM Systems, Inc. http://www.epam.com NTUU “KPI” EPAM POWER POINT TITLE http://kpi.ua Sub Topic ® 2011. EPAM Systems. All rights reserved.