SlideShare une entreprise Scribd logo
1  sur  32
Télécharger pour lire hors ligne
IBM Haifa Research Lab




Combinatorial Test Design and the FoCuS Tool


          Itai Segall
          Software Testing Verification and Reviews
          Group



                                             © 2010 IBM Corporation
IBM Haifa Research Lab




About us

    Software Testing, Verification and Review
    Methodologies group at IBM Haifa Research Labs
     – Concurrent testing
     – Code review methodology and tool support
     – Code coverage analysis
     – Test selection
     – Functional modeling and test planning




                                                  © 2010 IBM Corporation
IBM Haifa Research Lab




Outline

    Combinatorial Test Design (CTD) Concepts and
    Overview
    The FoCuS Tool and the Modeling and Reduction
    Process




3                                                  © 2010 IBM Corporation
IBM Haifa Research Lab




Observation - Omission is a Major Risk in Testing

    Choosing what to test out of an enormous test space
      – What is a test space? The set of parameters/values that define the
        scenarios, inputs, configurations or conditions to be tested, such as
          • Customer type (business, residential, government, …)
          • Customer geography (provinces)
          • Transaction type (add service, delete service, request credit …)

    When you have a list of 3000 tests, can it be reviewed?
    How do you know what’s there and what is missing?
      – Coverage (in retrospect)
      – Preventive techniques using CTD




4                                                                               © 2010 IBM Corporation
IBM Haifa Research Lab




An Example of a Test Design

    The configuration space for a cellphone application
     – Bluetooth – Yes / No
     – GPS – Yes / No
     – GPS software
     – Support for different GSM frequencies
     – Support for different 3G frequencies
     – Support for EMS and MMS

    Total number of combinations
     – 2 x 2 x 5 x 2 x 2 x 2 x 2 x 2 x 2 x 2 x 2 = 5120   Too many!


5                                                              © 2010 IBM Corporation
IBM Haifa Research Lab




Do we really need to test all 5120 configurations?




    So, to balance cost and risk, we look to select a subset of tests that covers the
    interactions of configuration variables at some level of interaction (pairs, three-
    way, etc.)

      Source http://csrc.nist.gov/groups/SNS/acts/ftfi.html used in slides 6,8,9
6                                                                                  © 2010 IBM Corporation
IBM Haifa Research Lab




How do we reduce the 5120 potential test cases?

    Interactions !
      – Interaction level of every 2 means that for any two variables all
        the combinations of their values have been tested together.
      – Every three is the same for every three variables

    IBM’s FoCuS tool models the variables, and allows us
    to adjust the level of interaction/coverage to achieve
    acceptable cost/risk tradeoff
    Explicit identification of what is tested and what is not
    tested


                                                                 © 2010 IBM Corporation
IBM Haifa Research Lab




How do we reduce the 5120 potential test cases?
    The configuration space for a cellphone application
      – Bluetooth – Yes / No
      – GPS – Yes / No
      – GPS software
      – Support for 3 different GSM frequencies
      – Support for 2 different 3G frequencies
      – Support for EMS and MMS
    Total number of combinations
      – 2 x 2 x 5 x 2 x 2 x 2 x 2 x 2 x 2 x 2 x 2 = 5120
    Question: How many tests are required for covering
    every combination of every 2 parameters?
    Answer: only 16 ! (99.7% reduction from 5120)
8                                                          © 2010 IBM Corporation
IBM Haifa Research Lab




How do we reduce the 5120 potential test cases?
 Interaction level of every 2 requires 16 tests – 99.7% reduction from 5120
                       GPS_Soft
 Bluetooth     GPS     ware         Wi_Fi   GSM850   GSM900   GSM1800   UMTS850   UMTS2100   EMS        MMS




  FALSE         TRUE   Destinator    TRUE    TRUE     FALSE    TRUE      FALSE     TRUE      FALSE      FALSE
  FALSE         TRUE   uDrive       FALSE    TRUE     FALSE    FALSE     TRUE      TRUE      FALSE      FALSE
   TRUE        FALSE   None          TRUE    TRUE     FALSE    TRUE      TRUE      FALSE     FALSE       TRUE
  FALSE         TRUE   mioMap        TRUE    TRUE     FALSE    FALSE     FALSE     TRUE      FALSE       TRUE
  FALSE         TRUE   iGo           TRUE    TRUE     FALSE    TRUE      TRUE      FALSE      TRUE       TRUE
   TRUE         TRUE   iGo           TRUE    FALSE    TRUE     TRUE      TRUE      TRUE      FALSE      FALSE
   TRUE         TRUE   mioMap       FALSE    FALSE    FALSE    FALSE     FALSE     FALSE      TRUE      FALSE
   TRUE         TRUE   Destinator   FALSE    FALSE    TRUE     TRUE      FALSE     TRUE       TRUE       TRUE
   TRUE         TRUE   Destinator   FALSE    FALSE    FALSE    FALSE     TRUE      FALSE      TRUE       TRUE
  FALSE         TRUE   mioMap        TRUE    TRUE     TRUE     TRUE      TRUE      FALSE     FALSE       TRUE
   TRUE        FALSE   None          TRUE    FALSE    TRUE     FALSE     FALSE     TRUE      FALSE      FALSE
   TRUE         TRUE   uDrive       FALSE    FALSE    TRUE     TRUE      FALSE     FALSE     FALSE      FALSE
  FALSE         TRUE   iGo          FALSE    FALSE    TRUE     FALSE     FALSE     FALSE      TRUE       TRUE
   TRUE         TRUE   uDrive        TRUE    TRUE     TRUE     TRUE      TRUE      FALSE     FALSE      FALSE
   TRUE         TRUE   uDrive       FALSE    FALSE    TRUE     TRUE      FALSE     TRUE       TRUE       TRUE
  FALSE        FALSE   None         FALSE    FALSE    TRUE     FALSE     TRUE      FALSE      TRUE       TRUE
                                                                                              © 2010 IBM Corporation
IBM Haifa Research Lab




How do we reduce the 5120 potential test cases?
 Interaction level of every 2 requires 16 tests – 99.7% reduction from 5120
                       GPS_Soft
 Bluetooth     GPS     ware         Wi_Fi   GSM850   GSM900   GSM1800   UMTS850   UMTS2100   EMS        MMS




  FALSE         TRUE   Destinator    TRUE    TRUE     FALSE    TRUE      FALSE     TRUE      FALSE      FALSE
  FALSE         TRUE   uDrive       FALSE    TRUE     FALSE    FALSE     TRUE      TRUE      FALSE      FALSE
   TRUE        FALSE   None          TRUE    TRUE     FALSE    TRUE      TRUE      FALSE     FALSE       TRUE
  FALSE         TRUE   mioMap        TRUE    TRUE     FALSE    FALSE     FALSE     TRUE      FALSE       TRUE
  FALSE         TRUE   iGo           TRUE    TRUE     FALSE    TRUE      TRUE      FALSE      TRUE       TRUE
   TRUE         TRUE   iGo           TRUE    FALSE    TRUE     TRUE      TRUE      TRUE      FALSE      FALSE
   TRUE         TRUE   mioMap       FALSE    FALSE    FALSE    FALSE     FALSE     FALSE      TRUE      FALSE
   TRUE         TRUE   Destinator   FALSE    FALSE    TRUE     TRUE      FALSE     TRUE       TRUE       TRUE
   TRUE         TRUE   Destinator   FALSE    FALSE    FALSE    FALSE     TRUE      FALSE      TRUE       TRUE
  FALSE         TRUE   mioMap        TRUE    TRUE     TRUE     TRUE      TRUE      FALSE     FALSE       TRUE
   TRUE        FALSE   None          TRUE    FALSE    TRUE     FALSE     FALSE     TRUE      FALSE      FALSE
   TRUE         TRUE   uDrive       FALSE    FALSE    TRUE     TRUE      FALSE     FALSE     FALSE      FALSE
  FALSE         TRUE   iGo          FALSE    FALSE    TRUE     FALSE     FALSE     FALSE      TRUE       TRUE
   TRUE         TRUE   uDrive        TRUE    TRUE     TRUE     TRUE      TRUE      FALSE     FALSE      FALSE
   TRUE         TRUE   uDrive       FALSE    FALSE    TRUE     TRUE      FALSE     TRUE       TRUE       TRUE
  FALSE        FALSE   None         FALSE    FALSE    TRUE     FALSE     TRUE      FALSE      TRUE       TRUE
                                                                                              © 2010 IBM Corporation
IBM Haifa Research Lab




How do we reduce the 5120 potential test cases?
 Interaction level of every 2 requires 16 tests – 99.7% reduction from 5120
                       GPS_Soft
 Bluetooth     GPS     ware         Wi_Fi   GSM850   GSM900   GSM1800   UMTS850   UMTS2100   EMS        MMS




  FALSE         TRUE   Destinator    TRUE    TRUE     FALSE    TRUE      FALSE     TRUE      FALSE      FALSE
  FALSE         TRUE   uDrive       FALSE    TRUE     FALSE    FALSE     TRUE      TRUE      FALSE      FALSE
   TRUE        FALSE   None          TRUE    TRUE     FALSE    TRUE      TRUE      FALSE     FALSE       TRUE
  FALSE         TRUE   mioMap        TRUE    TRUE     FALSE    FALSE     FALSE     TRUE      FALSE       TRUE
  FALSE         TRUE   iGo           TRUE    TRUE     FALSE    TRUE      TRUE      FALSE      TRUE       TRUE
   TRUE         TRUE   iGo           TRUE    FALSE    TRUE     TRUE      TRUE      TRUE      FALSE      FALSE
   TRUE         TRUE   mioMap       FALSE    FALSE    FALSE    FALSE     FALSE     FALSE      TRUE      FALSE
   TRUE         TRUE   Destinator   FALSE    FALSE    TRUE     TRUE      FALSE     TRUE       TRUE       TRUE
   TRUE         TRUE   Destinator   FALSE    FALSE    FALSE    FALSE     TRUE      FALSE      TRUE       TRUE
  FALSE         TRUE   mioMap        TRUE    TRUE     TRUE     TRUE      TRUE      FALSE     FALSE       TRUE
   TRUE        FALSE   None          TRUE    FALSE    TRUE     FALSE     FALSE     TRUE      FALSE      FALSE
   TRUE         TRUE   uDrive       FALSE    FALSE    TRUE     TRUE      FALSE     FALSE     FALSE      FALSE
  FALSE         TRUE   iGo          FALSE    FALSE    TRUE     FALSE     FALSE     FALSE      TRUE       TRUE
   TRUE         TRUE   uDrive        TRUE    TRUE     TRUE     TRUE      TRUE      FALSE     FALSE      FALSE
   TRUE         TRUE   uDrive       FALSE    FALSE    TRUE     TRUE      FALSE     TRUE       TRUE       TRUE
  FALSE        FALSE   None         FALSE    FALSE    TRUE     FALSE     TRUE      FALSE      TRUE       TRUE
                                                                                              © 2010 IBM Corporation
IBM Haifa Research Lab




How do we reduce the 5120 potential test cases?
 Interaction level of every 2 requires 16 tests – 99.7% reduction from 5120
                       GPS_Soft
 Bluetooth     GPS     ware         Wi_Fi   GSM850   GSM900   GSM1800   UMTS850   UMTS2100   EMS        MMS




  FALSE         TRUE   Destinator    TRUE    TRUE     FALSE    TRUE      FALSE     TRUE      FALSE      FALSE
  FALSE         TRUE   uDrive       FALSE    TRUE     FALSE    FALSE     TRUE      TRUE      FALSE      FALSE
   TRUE        FALSE   None          TRUE    TRUE     FALSE    TRUE      TRUE      FALSE     FALSE       TRUE
  FALSE         TRUE   mioMap        TRUE    TRUE     FALSE    FALSE     FALSE     TRUE      FALSE       TRUE
  FALSE         TRUE   iGo           TRUE    TRUE     FALSE    TRUE      TRUE      FALSE      TRUE       TRUE
   TRUE         TRUE   iGo           TRUE    FALSE    TRUE     TRUE      TRUE      TRUE      FALSE      FALSE
   TRUE         TRUE   mioMap       FALSE    FALSE    FALSE    FALSE     FALSE     FALSE      TRUE      FALSE
   TRUE         TRUE   Destinator   FALSE    FALSE    TRUE     TRUE      FALSE     TRUE       TRUE       TRUE
   TRUE         TRUE   Destinator   FALSE    FALSE    FALSE    FALSE     TRUE      FALSE      TRUE       TRUE
  FALSE         TRUE   mioMap        TRUE    TRUE     TRUE     TRUE      TRUE      FALSE     FALSE       TRUE
   TRUE        FALSE   None          TRUE    FALSE    TRUE     FALSE     FALSE     TRUE      FALSE      FALSE
   TRUE         TRUE   uDrive       FALSE    FALSE    TRUE     TRUE      FALSE     FALSE     FALSE      FALSE
  FALSE         TRUE   iGo          FALSE    FALSE    TRUE     FALSE     FALSE     FALSE      TRUE       TRUE
   TRUE         TRUE   uDrive        TRUE    TRUE     TRUE     TRUE      TRUE      FALSE     FALSE      FALSE
   TRUE         TRUE   uDrive       FALSE    FALSE    TRUE     TRUE      FALSE     TRUE       TRUE       TRUE
  FALSE        FALSE   None         FALSE    FALSE    TRUE     FALSE     TRUE      FALSE      TRUE       TRUE
                                                                                              © 2010 IBM Corporation
IBM Haifa Research Lab




Outline

     Combinatorial Test Design (CTD) Concepts and
     Overview
     The FoCuS Tool and The Modeling and Reduction
     Process




13                                                  © 2010 IBM Corporation
IBM Haifa Research Lab




A Comment on the Use of CTD in the Industry

     Many CTD tools were created
      – The mathematics are very nice to play with
      – The problem is solved with advanced combinatorics
     However, most are almost toy-tools
      – Real world problems are not toy examples
      – Real world problems may be hard to model
      – Not all value combinations are possible – there are restrictions
      – Existing tests need to be evaluated or taken into account
      – Advanced requirements such as distribution requirements on the
        values in the resulting tests
     Most tools miss many things testers need



14                                                                    © 2010 IBM Corporation
IBM Haifa Research Lab




CTD within our FoCuS tool

     Tackles complexity of modeling by Cartesian product methodology
     Fully supports restrictions on the valid combinations
     Highly scalable
     Supports advanced features
      – Distribution requirements
      – Good path and bad path test planning
     Considers existing tests
      – Report uncovered areas
      – Suggest complementary test plans




15                                                           © 2010 IBM Corporation
IBM Haifa Research Lab


The cell phone example in FoCuS




                                  © 2010 IBM Corporation
IBM Haifa Research Lab




Example – cont.
    Cartesian product consists of 5120 possible
    configurations:




                                                  © 2010 IBM Corporation
IBM Haifa Research Lab




Example – Cont.
    Some combinations do not make sense, and should
    be removed:




                                                © 2010 IBM Corporation
IBM Haifa Research Lab




Example – Cont.

    Now the model contains 2560 legal tasks:




                                               © 2010 IBM Corporation
IBM Haifa Research Lab




Example – Cont.

    A test plan can now be created:




                                      © 2010 IBM Corporation
IBM Haifa Research Lab




Example – Cont.
    16 tests suffice:




                             © 2010 IBM Corporation
IBM Haifa Research Lab




Example – Cont.
    Suppose I have only a few Bluetooth components




                                                 © 2010 IBM Corporation
IBM Haifa Research Lab




Example – Cont.
    The new test plan:




                             © 2010 IBM Corporation
IBM Haifa Research Lab




Example – Cont.

    More complex coverage requirements may be stated:




                                                © 2010 IBM Corporation
IBM Haifa Research Lab




Example – cont.

    And the resulting test plan:




                                   © 2010 IBM Corporation
IBM Haifa Research Lab




Example – cont.

    “.. But I already have some tests implemented, I want
    to use them”




                                                    © 2010 IBM Corporation
IBM Haifa Research Lab




Example – cont.

    FoCuS can analyze what is not covered:




                                             © 2010 IBM Corporation
IBM Haifa Research Lab




Example – cont.




                             © 2010 IBM Corporation
IBM Haifa Research Lab




Example – cont.

    .. and suggest a complementary test plan:




                                                © 2010 IBM Corporation
IBM Haifa Research Lab


Comparing Manually Created Test Plans to Usage of
Modeling and CTD

     Manual test plans will usually have many large
     holes
      – And it is not known where they are

     Manual test plans are more expensive
      – Take a lot of time to design
      – Manual test plans contain more tests, so longer time to
        implement the tests and longer time to execute them

     Known quality situation
      – With CTD you can get the desired quality based on risk
      – With CTD you can compare alternatives, as once the model is
        created, creating alternatives takes minutes

30                                                                © 2010 IBM Corporation
IBM Haifa Research Lab



Additional Advantages of Systematic Test Plan Design
     Once the methodology is learned, it is much less work – less tests to execute
     The tool tells you how many test configurations are needed and specific
     configurations that fulfill your requirements
      – You can discuss alternatives for how the budget will be used
     Having a model instead of a spreadsheet test list is much more useful
      – Less effort to maintain the model
      – From the model you can generate lists after changes are made
          • A new operating system was added
          • Need to add a new variable that interacts with the current ones
          • Need to remove variables or values and make sure that the test plan
            maintains quality
      – The model is much easier to review than traditional test plans as the
        generation scheme explicitly describes what is tested



31                                                                      © 2010 IBM Corporation
IBM Haifa Research Lab




Thank You

   Trial download:
   http://www.alphaworks.ibm.com/tech/focus
   Contact me at: itais@il.ibm.com




                                              © 2010 IBM Corporation

Contenu connexe

En vedette

黑客终极语言——Lisp
黑客终极语言——Lisp黑客终极语言——Lisp
黑客终极语言——LispRui Peng
 
9 January 2013 1ABCT Weekly Newsletter
9 January 2013 1ABCT Weekly Newsletter9 January 2013 1ABCT Weekly Newsletter
9 January 2013 1ABCT Weekly NewsletterNoel Waterman
 
Pretotyping with uncertain students (focusing on testing proto...s)
Pretotyping with uncertain students (focusing on testing proto...s)Pretotyping with uncertain students (focusing on testing proto...s)
Pretotyping with uncertain students (focusing on testing proto...s)Viroo Mirji
 
Webxpress Home Delivery Solution
Webxpress Home Delivery SolutionWebxpress Home Delivery Solution
Webxpress Home Delivery SolutionWebXpress
 
Cambie+7 preview package
Cambie+7 preview packageCambie+7 preview package
Cambie+7 preview packageMatt Collinge
 
Using Military Lodging Facilities For Leisure
Using Military Lodging Facilities For LeisureUsing Military Lodging Facilities For Leisure
Using Military Lodging Facilities For LeisureNoel Waterman
 
Handbook for a New Military Spouse
Handbook for a New Military SpouseHandbook for a New Military Spouse
Handbook for a New Military SpouseNoel Waterman
 
Apr 2012 1 ID Fort Riley Monthly News Update
Apr 2012 1 ID Fort Riley Monthly News UpdateApr 2012 1 ID Fort Riley Monthly News Update
Apr 2012 1 ID Fort Riley Monthly News UpdateNoel Waterman
 
Mobile SEO Tips
Mobile SEO TipsMobile SEO Tips
Mobile SEO TipsiProspect
 

En vedette (11)

黑客终极语言——Lisp
黑客终极语言——Lisp黑客终极语言——Lisp
黑客终极语言——Lisp
 
9 January 2013 1ABCT Weekly Newsletter
9 January 2013 1ABCT Weekly Newsletter9 January 2013 1ABCT Weekly Newsletter
9 January 2013 1ABCT Weekly Newsletter
 
Pretotyping with uncertain students (focusing on testing proto...s)
Pretotyping with uncertain students (focusing on testing proto...s)Pretotyping with uncertain students (focusing on testing proto...s)
Pretotyping with uncertain students (focusing on testing proto...s)
 
Flexible And Usable Web Gis For The Organisation Opt
Flexible And Usable Web Gis For The Organisation OptFlexible And Usable Web Gis For The Organisation Opt
Flexible And Usable Web Gis For The Organisation Opt
 
Webxpress Home Delivery Solution
Webxpress Home Delivery SolutionWebxpress Home Delivery Solution
Webxpress Home Delivery Solution
 
Cambie+7 preview package
Cambie+7 preview packageCambie+7 preview package
Cambie+7 preview package
 
Using Military Lodging Facilities For Leisure
Using Military Lodging Facilities For LeisureUsing Military Lodging Facilities For Leisure
Using Military Lodging Facilities For Leisure
 
Handbook for a New Military Spouse
Handbook for a New Military SpouseHandbook for a New Military Spouse
Handbook for a New Military Spouse
 
Who was henry viii
Who was henry viiiWho was henry viii
Who was henry viii
 
Apr 2012 1 ID Fort Riley Monthly News Update
Apr 2012 1 ID Fort Riley Monthly News UpdateApr 2012 1 ID Fort Riley Monthly News Update
Apr 2012 1 ID Fort Riley Monthly News Update
 
Mobile SEO Tips
Mobile SEO TipsMobile SEO Tips
Mobile SEO Tips
 

Similaire à כיצד ניתן לצמצם את כמות הבדיקות מבלי לפגוע (ואף לשפר) בכיסוי המערכת?

Commercialization Challenges Of Mobile Software Development In A Fragmented M...
Commercialization Challenges Of Mobile Software Development In A Fragmented M...Commercialization Challenges Of Mobile Software Development In A Fragmented M...
Commercialization Challenges Of Mobile Software Development In A Fragmented M...Stephen King
 
Internet Conference 2018: Internet Measurement, how to get the relativities r...
Internet Conference 2018: Internet Measurement, how to get the relativities r...Internet Conference 2018: Internet Measurement, how to get the relativities r...
Internet Conference 2018: Internet Measurement, how to get the relativities r...APNIC
 
Don't Take Your Mobile Device To The Bathroom
Don't Take Your Mobile Device To The BathroomDon't Take Your Mobile Device To The Bathroom
Don't Take Your Mobile Device To The BathroomRob Sawyer
 
Seoul gov_keynote
Seoul gov_keynoteSeoul gov_keynote
Seoul gov_keynotecaziam
 
Mobile Marketing For Advertisers
Mobile Marketing For AdvertisersMobile Marketing For Advertisers
Mobile Marketing For AdvertisersTed Mann
 
Heavy Chef March: Building Great Mobisites
Heavy Chef March: Building Great MobisitesHeavy Chef March: Building Great Mobisites
Heavy Chef March: Building Great MobisitesHeavy Chef
 
Tried and Tested Tips to Monetize the Data Pipe – T-Mobile
Tried and Tested Tips to Monetize the Data Pipe – T-MobileTried and Tested Tips to Monetize the Data Pipe – T-Mobile
Tried and Tested Tips to Monetize the Data Pipe – T-MobileHitReach
 
Vr ar科技於醫療產業的應用現況與未來商機
Vr ar科技於醫療產業的應用現況與未來商機Vr ar科技於醫療產業的應用現況與未來商機
Vr ar科技於醫療產業的應用現況與未來商機FAUST CHOU
 
Now Hear This! Putting Voice, Video, and Text into Ruby on Rails
Now Hear This! Putting Voice, Video, and Text into Ruby on RailsNow Hear This! Putting Voice, Video, and Text into Ruby on Rails
Now Hear This! Putting Voice, Video, and Text into Ruby on RailsMojo Lingo
 
Wap gprs settings_india%2001%2010
Wap gprs settings_india%2001%2010Wap gprs settings_india%2001%2010
Wap gprs settings_india%2001%2010zanjebadrinath
 
Augmented Reality: From Marketing Buzzword To A Better Consumer Experience
Augmented Reality: From Marketing Buzzword To A Better Consumer ExperienceAugmented Reality: From Marketing Buzzword To A Better Consumer Experience
Augmented Reality: From Marketing Buzzword To A Better Consumer ExperienceZugara
 
How Android Based Phone Helped Me Win American Idol (Elad Shapira)
How Android Based Phone Helped Me Win American Idol (Elad Shapira)How Android Based Phone Helped Me Win American Idol (Elad Shapira)
How Android Based Phone Helped Me Win American Idol (Elad Shapira)ClubHack
 
Build Deep Learning Applications Using MXNet and Amazon SageMaker (AIM418) - ...
Build Deep Learning Applications Using MXNet and Amazon SageMaker (AIM418) - ...Build Deep Learning Applications Using MXNet and Amazon SageMaker (AIM418) - ...
Build Deep Learning Applications Using MXNet and Amazon SageMaker (AIM418) - ...Amazon Web Services
 
Augmented Reality: From Marketing Buzzword to Better Consumer Experience
Augmented Reality: From Marketing Buzzword to Better Consumer ExperienceAugmented Reality: From Marketing Buzzword to Better Consumer Experience
Augmented Reality: From Marketing Buzzword to Better Consumer ExperienceZugara
 
InterACT! Conference Presentation on Augmented Reality
InterACT! Conference Presentation on Augmented RealityInterACT! Conference Presentation on Augmented Reality
InterACT! Conference Presentation on Augmented RealityMatthew Szymczyk
 

Similaire à כיצד ניתן לצמצם את כמות הבדיקות מבלי לפגוע (ואף לשפר) בכיסוי המערכת? (17)

Commercialization Challenges Of Mobile Software Development In A Fragmented M...
Commercialization Challenges Of Mobile Software Development In A Fragmented M...Commercialization Challenges Of Mobile Software Development In A Fragmented M...
Commercialization Challenges Of Mobile Software Development In A Fragmented M...
 
Definative State of Ad Frauds on January 18 2019 at 1027a
Definative State of Ad Frauds on January 18 2019 at 1027aDefinative State of Ad Frauds on January 18 2019 at 1027a
Definative State of Ad Frauds on January 18 2019 at 1027a
 
Machine Learning at the Edge
Machine Learning at the EdgeMachine Learning at the Edge
Machine Learning at the Edge
 
Internet Conference 2018: Internet Measurement, how to get the relativities r...
Internet Conference 2018: Internet Measurement, how to get the relativities r...Internet Conference 2018: Internet Measurement, how to get the relativities r...
Internet Conference 2018: Internet Measurement, how to get the relativities r...
 
Don't Take Your Mobile Device To The Bathroom
Don't Take Your Mobile Device To The BathroomDon't Take Your Mobile Device To The Bathroom
Don't Take Your Mobile Device To The Bathroom
 
Seoul gov_keynote
Seoul gov_keynoteSeoul gov_keynote
Seoul gov_keynote
 
Mobile Marketing For Advertisers
Mobile Marketing For AdvertisersMobile Marketing For Advertisers
Mobile Marketing For Advertisers
 
Heavy Chef March: Building Great Mobisites
Heavy Chef March: Building Great MobisitesHeavy Chef March: Building Great Mobisites
Heavy Chef March: Building Great Mobisites
 
Tried and Tested Tips to Monetize the Data Pipe – T-Mobile
Tried and Tested Tips to Monetize the Data Pipe – T-MobileTried and Tested Tips to Monetize the Data Pipe – T-Mobile
Tried and Tested Tips to Monetize the Data Pipe – T-Mobile
 
Vr ar科技於醫療產業的應用現況與未來商機
Vr ar科技於醫療產業的應用現況與未來商機Vr ar科技於醫療產業的應用現況與未來商機
Vr ar科技於醫療產業的應用現況與未來商機
 
Now Hear This! Putting Voice, Video, and Text into Ruby on Rails
Now Hear This! Putting Voice, Video, and Text into Ruby on RailsNow Hear This! Putting Voice, Video, and Text into Ruby on Rails
Now Hear This! Putting Voice, Video, and Text into Ruby on Rails
 
Wap gprs settings_india%2001%2010
Wap gprs settings_india%2001%2010Wap gprs settings_india%2001%2010
Wap gprs settings_india%2001%2010
 
Augmented Reality: From Marketing Buzzword To A Better Consumer Experience
Augmented Reality: From Marketing Buzzword To A Better Consumer ExperienceAugmented Reality: From Marketing Buzzword To A Better Consumer Experience
Augmented Reality: From Marketing Buzzword To A Better Consumer Experience
 
How Android Based Phone Helped Me Win American Idol (Elad Shapira)
How Android Based Phone Helped Me Win American Idol (Elad Shapira)How Android Based Phone Helped Me Win American Idol (Elad Shapira)
How Android Based Phone Helped Me Win American Idol (Elad Shapira)
 
Build Deep Learning Applications Using MXNet and Amazon SageMaker (AIM418) - ...
Build Deep Learning Applications Using MXNet and Amazon SageMaker (AIM418) - ...Build Deep Learning Applications Using MXNet and Amazon SageMaker (AIM418) - ...
Build Deep Learning Applications Using MXNet and Amazon SageMaker (AIM418) - ...
 
Augmented Reality: From Marketing Buzzword to Better Consumer Experience
Augmented Reality: From Marketing Buzzword to Better Consumer ExperienceAugmented Reality: From Marketing Buzzword to Better Consumer Experience
Augmented Reality: From Marketing Buzzword to Better Consumer Experience
 
InterACT! Conference Presentation on Augmented Reality
InterACT! Conference Presentation on Augmented RealityInterACT! Conference Presentation on Augmented Reality
InterACT! Conference Presentation on Augmented Reality
 

כיצד ניתן לצמצם את כמות הבדיקות מבלי לפגוע (ואף לשפר) בכיסוי המערכת?

  • 1. IBM Haifa Research Lab Combinatorial Test Design and the FoCuS Tool Itai Segall Software Testing Verification and Reviews Group © 2010 IBM Corporation
  • 2. IBM Haifa Research Lab About us Software Testing, Verification and Review Methodologies group at IBM Haifa Research Labs – Concurrent testing – Code review methodology and tool support – Code coverage analysis – Test selection – Functional modeling and test planning © 2010 IBM Corporation
  • 3. IBM Haifa Research Lab Outline Combinatorial Test Design (CTD) Concepts and Overview The FoCuS Tool and the Modeling and Reduction Process 3 © 2010 IBM Corporation
  • 4. IBM Haifa Research Lab Observation - Omission is a Major Risk in Testing Choosing what to test out of an enormous test space – What is a test space? The set of parameters/values that define the scenarios, inputs, configurations or conditions to be tested, such as • Customer type (business, residential, government, …) • Customer geography (provinces) • Transaction type (add service, delete service, request credit …) When you have a list of 3000 tests, can it be reviewed? How do you know what’s there and what is missing? – Coverage (in retrospect) – Preventive techniques using CTD 4 © 2010 IBM Corporation
  • 5. IBM Haifa Research Lab An Example of a Test Design The configuration space for a cellphone application – Bluetooth – Yes / No – GPS – Yes / No – GPS software – Support for different GSM frequencies – Support for different 3G frequencies – Support for EMS and MMS Total number of combinations – 2 x 2 x 5 x 2 x 2 x 2 x 2 x 2 x 2 x 2 x 2 = 5120 Too many! 5 © 2010 IBM Corporation
  • 6. IBM Haifa Research Lab Do we really need to test all 5120 configurations? So, to balance cost and risk, we look to select a subset of tests that covers the interactions of configuration variables at some level of interaction (pairs, three- way, etc.) Source http://csrc.nist.gov/groups/SNS/acts/ftfi.html used in slides 6,8,9 6 © 2010 IBM Corporation
  • 7. IBM Haifa Research Lab How do we reduce the 5120 potential test cases? Interactions ! – Interaction level of every 2 means that for any two variables all the combinations of their values have been tested together. – Every three is the same for every three variables IBM’s FoCuS tool models the variables, and allows us to adjust the level of interaction/coverage to achieve acceptable cost/risk tradeoff Explicit identification of what is tested and what is not tested © 2010 IBM Corporation
  • 8. IBM Haifa Research Lab How do we reduce the 5120 potential test cases? The configuration space for a cellphone application – Bluetooth – Yes / No – GPS – Yes / No – GPS software – Support for 3 different GSM frequencies – Support for 2 different 3G frequencies – Support for EMS and MMS Total number of combinations – 2 x 2 x 5 x 2 x 2 x 2 x 2 x 2 x 2 x 2 x 2 = 5120 Question: How many tests are required for covering every combination of every 2 parameters? Answer: only 16 ! (99.7% reduction from 5120) 8 © 2010 IBM Corporation
  • 9. IBM Haifa Research Lab How do we reduce the 5120 potential test cases? Interaction level of every 2 requires 16 tests – 99.7% reduction from 5120 GPS_Soft Bluetooth GPS ware Wi_Fi GSM850 GSM900 GSM1800 UMTS850 UMTS2100 EMS MMS FALSE TRUE Destinator TRUE TRUE FALSE TRUE FALSE TRUE FALSE FALSE FALSE TRUE uDrive FALSE TRUE FALSE FALSE TRUE TRUE FALSE FALSE TRUE FALSE None TRUE TRUE FALSE TRUE TRUE FALSE FALSE TRUE FALSE TRUE mioMap TRUE TRUE FALSE FALSE FALSE TRUE FALSE TRUE FALSE TRUE iGo TRUE TRUE FALSE TRUE TRUE FALSE TRUE TRUE TRUE TRUE iGo TRUE FALSE TRUE TRUE TRUE TRUE FALSE FALSE TRUE TRUE mioMap FALSE FALSE FALSE FALSE FALSE FALSE TRUE FALSE TRUE TRUE Destinator FALSE FALSE TRUE TRUE FALSE TRUE TRUE TRUE TRUE TRUE Destinator FALSE FALSE FALSE FALSE TRUE FALSE TRUE TRUE FALSE TRUE mioMap TRUE TRUE TRUE TRUE TRUE FALSE FALSE TRUE TRUE FALSE None TRUE FALSE TRUE FALSE FALSE TRUE FALSE FALSE TRUE TRUE uDrive FALSE FALSE TRUE TRUE FALSE FALSE FALSE FALSE FALSE TRUE iGo FALSE FALSE TRUE FALSE FALSE FALSE TRUE TRUE TRUE TRUE uDrive TRUE TRUE TRUE TRUE TRUE FALSE FALSE FALSE TRUE TRUE uDrive FALSE FALSE TRUE TRUE FALSE TRUE TRUE TRUE FALSE FALSE None FALSE FALSE TRUE FALSE TRUE FALSE TRUE TRUE © 2010 IBM Corporation
  • 10. IBM Haifa Research Lab How do we reduce the 5120 potential test cases? Interaction level of every 2 requires 16 tests – 99.7% reduction from 5120 GPS_Soft Bluetooth GPS ware Wi_Fi GSM850 GSM900 GSM1800 UMTS850 UMTS2100 EMS MMS FALSE TRUE Destinator TRUE TRUE FALSE TRUE FALSE TRUE FALSE FALSE FALSE TRUE uDrive FALSE TRUE FALSE FALSE TRUE TRUE FALSE FALSE TRUE FALSE None TRUE TRUE FALSE TRUE TRUE FALSE FALSE TRUE FALSE TRUE mioMap TRUE TRUE FALSE FALSE FALSE TRUE FALSE TRUE FALSE TRUE iGo TRUE TRUE FALSE TRUE TRUE FALSE TRUE TRUE TRUE TRUE iGo TRUE FALSE TRUE TRUE TRUE TRUE FALSE FALSE TRUE TRUE mioMap FALSE FALSE FALSE FALSE FALSE FALSE TRUE FALSE TRUE TRUE Destinator FALSE FALSE TRUE TRUE FALSE TRUE TRUE TRUE TRUE TRUE Destinator FALSE FALSE FALSE FALSE TRUE FALSE TRUE TRUE FALSE TRUE mioMap TRUE TRUE TRUE TRUE TRUE FALSE FALSE TRUE TRUE FALSE None TRUE FALSE TRUE FALSE FALSE TRUE FALSE FALSE TRUE TRUE uDrive FALSE FALSE TRUE TRUE FALSE FALSE FALSE FALSE FALSE TRUE iGo FALSE FALSE TRUE FALSE FALSE FALSE TRUE TRUE TRUE TRUE uDrive TRUE TRUE TRUE TRUE TRUE FALSE FALSE FALSE TRUE TRUE uDrive FALSE FALSE TRUE TRUE FALSE TRUE TRUE TRUE FALSE FALSE None FALSE FALSE TRUE FALSE TRUE FALSE TRUE TRUE © 2010 IBM Corporation
  • 11. IBM Haifa Research Lab How do we reduce the 5120 potential test cases? Interaction level of every 2 requires 16 tests – 99.7% reduction from 5120 GPS_Soft Bluetooth GPS ware Wi_Fi GSM850 GSM900 GSM1800 UMTS850 UMTS2100 EMS MMS FALSE TRUE Destinator TRUE TRUE FALSE TRUE FALSE TRUE FALSE FALSE FALSE TRUE uDrive FALSE TRUE FALSE FALSE TRUE TRUE FALSE FALSE TRUE FALSE None TRUE TRUE FALSE TRUE TRUE FALSE FALSE TRUE FALSE TRUE mioMap TRUE TRUE FALSE FALSE FALSE TRUE FALSE TRUE FALSE TRUE iGo TRUE TRUE FALSE TRUE TRUE FALSE TRUE TRUE TRUE TRUE iGo TRUE FALSE TRUE TRUE TRUE TRUE FALSE FALSE TRUE TRUE mioMap FALSE FALSE FALSE FALSE FALSE FALSE TRUE FALSE TRUE TRUE Destinator FALSE FALSE TRUE TRUE FALSE TRUE TRUE TRUE TRUE TRUE Destinator FALSE FALSE FALSE FALSE TRUE FALSE TRUE TRUE FALSE TRUE mioMap TRUE TRUE TRUE TRUE TRUE FALSE FALSE TRUE TRUE FALSE None TRUE FALSE TRUE FALSE FALSE TRUE FALSE FALSE TRUE TRUE uDrive FALSE FALSE TRUE TRUE FALSE FALSE FALSE FALSE FALSE TRUE iGo FALSE FALSE TRUE FALSE FALSE FALSE TRUE TRUE TRUE TRUE uDrive TRUE TRUE TRUE TRUE TRUE FALSE FALSE FALSE TRUE TRUE uDrive FALSE FALSE TRUE TRUE FALSE TRUE TRUE TRUE FALSE FALSE None FALSE FALSE TRUE FALSE TRUE FALSE TRUE TRUE © 2010 IBM Corporation
  • 12. IBM Haifa Research Lab How do we reduce the 5120 potential test cases? Interaction level of every 2 requires 16 tests – 99.7% reduction from 5120 GPS_Soft Bluetooth GPS ware Wi_Fi GSM850 GSM900 GSM1800 UMTS850 UMTS2100 EMS MMS FALSE TRUE Destinator TRUE TRUE FALSE TRUE FALSE TRUE FALSE FALSE FALSE TRUE uDrive FALSE TRUE FALSE FALSE TRUE TRUE FALSE FALSE TRUE FALSE None TRUE TRUE FALSE TRUE TRUE FALSE FALSE TRUE FALSE TRUE mioMap TRUE TRUE FALSE FALSE FALSE TRUE FALSE TRUE FALSE TRUE iGo TRUE TRUE FALSE TRUE TRUE FALSE TRUE TRUE TRUE TRUE iGo TRUE FALSE TRUE TRUE TRUE TRUE FALSE FALSE TRUE TRUE mioMap FALSE FALSE FALSE FALSE FALSE FALSE TRUE FALSE TRUE TRUE Destinator FALSE FALSE TRUE TRUE FALSE TRUE TRUE TRUE TRUE TRUE Destinator FALSE FALSE FALSE FALSE TRUE FALSE TRUE TRUE FALSE TRUE mioMap TRUE TRUE TRUE TRUE TRUE FALSE FALSE TRUE TRUE FALSE None TRUE FALSE TRUE FALSE FALSE TRUE FALSE FALSE TRUE TRUE uDrive FALSE FALSE TRUE TRUE FALSE FALSE FALSE FALSE FALSE TRUE iGo FALSE FALSE TRUE FALSE FALSE FALSE TRUE TRUE TRUE TRUE uDrive TRUE TRUE TRUE TRUE TRUE FALSE FALSE FALSE TRUE TRUE uDrive FALSE FALSE TRUE TRUE FALSE TRUE TRUE TRUE FALSE FALSE None FALSE FALSE TRUE FALSE TRUE FALSE TRUE TRUE © 2010 IBM Corporation
  • 13. IBM Haifa Research Lab Outline Combinatorial Test Design (CTD) Concepts and Overview The FoCuS Tool and The Modeling and Reduction Process 13 © 2010 IBM Corporation
  • 14. IBM Haifa Research Lab A Comment on the Use of CTD in the Industry Many CTD tools were created – The mathematics are very nice to play with – The problem is solved with advanced combinatorics However, most are almost toy-tools – Real world problems are not toy examples – Real world problems may be hard to model – Not all value combinations are possible – there are restrictions – Existing tests need to be evaluated or taken into account – Advanced requirements such as distribution requirements on the values in the resulting tests Most tools miss many things testers need 14 © 2010 IBM Corporation
  • 15. IBM Haifa Research Lab CTD within our FoCuS tool Tackles complexity of modeling by Cartesian product methodology Fully supports restrictions on the valid combinations Highly scalable Supports advanced features – Distribution requirements – Good path and bad path test planning Considers existing tests – Report uncovered areas – Suggest complementary test plans 15 © 2010 IBM Corporation
  • 16. IBM Haifa Research Lab The cell phone example in FoCuS © 2010 IBM Corporation
  • 17. IBM Haifa Research Lab Example – cont. Cartesian product consists of 5120 possible configurations: © 2010 IBM Corporation
  • 18. IBM Haifa Research Lab Example – Cont. Some combinations do not make sense, and should be removed: © 2010 IBM Corporation
  • 19. IBM Haifa Research Lab Example – Cont. Now the model contains 2560 legal tasks: © 2010 IBM Corporation
  • 20. IBM Haifa Research Lab Example – Cont. A test plan can now be created: © 2010 IBM Corporation
  • 21. IBM Haifa Research Lab Example – Cont. 16 tests suffice: © 2010 IBM Corporation
  • 22. IBM Haifa Research Lab Example – Cont. Suppose I have only a few Bluetooth components © 2010 IBM Corporation
  • 23. IBM Haifa Research Lab Example – Cont. The new test plan: © 2010 IBM Corporation
  • 24. IBM Haifa Research Lab Example – Cont. More complex coverage requirements may be stated: © 2010 IBM Corporation
  • 25. IBM Haifa Research Lab Example – cont. And the resulting test plan: © 2010 IBM Corporation
  • 26. IBM Haifa Research Lab Example – cont. “.. But I already have some tests implemented, I want to use them” © 2010 IBM Corporation
  • 27. IBM Haifa Research Lab Example – cont. FoCuS can analyze what is not covered: © 2010 IBM Corporation
  • 28. IBM Haifa Research Lab Example – cont. © 2010 IBM Corporation
  • 29. IBM Haifa Research Lab Example – cont. .. and suggest a complementary test plan: © 2010 IBM Corporation
  • 30. IBM Haifa Research Lab Comparing Manually Created Test Plans to Usage of Modeling and CTD Manual test plans will usually have many large holes – And it is not known where they are Manual test plans are more expensive – Take a lot of time to design – Manual test plans contain more tests, so longer time to implement the tests and longer time to execute them Known quality situation – With CTD you can get the desired quality based on risk – With CTD you can compare alternatives, as once the model is created, creating alternatives takes minutes 30 © 2010 IBM Corporation
  • 31. IBM Haifa Research Lab Additional Advantages of Systematic Test Plan Design Once the methodology is learned, it is much less work – less tests to execute The tool tells you how many test configurations are needed and specific configurations that fulfill your requirements – You can discuss alternatives for how the budget will be used Having a model instead of a spreadsheet test list is much more useful – Less effort to maintain the model – From the model you can generate lists after changes are made • A new operating system was added • Need to add a new variable that interacts with the current ones • Need to remove variables or values and make sure that the test plan maintains quality – The model is much easier to review than traditional test plans as the generation scheme explicitly describes what is tested 31 © 2010 IBM Corporation
  • 32. IBM Haifa Research Lab Thank You Trial download: http://www.alphaworks.ibm.com/tech/focus Contact me at: itais@il.ibm.com © 2010 IBM Corporation