Playing Pool and Consulting Oracles in Software Testing Methodologies

Roles of models

The art of testing consists of creating, selecting, exploring and revising models
Our ability to go through this process depends on the number of different models we have at hand and their ability to express a program's behaviour

Playing Pool and Consulting Oracles

Testing is like playing a pool game
Either hit the ball to any pocket (kiddie pool) or specify the pocket in advance (real pool). So, in testing there are kiddie testing and real testing
In testing there are Kiddie Testing and Real Testing
         In Kiddie testing, the observed outcome is considered as the expected outcome
         In Real Testing, the outcome is predicted and documented before the test is run

Oracles:

      An oracle is any program, process or body of data that specifies the expected outcome of a set of tests as applied to a tested object
Example of oracle: Input/Outcome Oracle an Oracle that specifies the expected outcome for a specified input

Sources of Oracles

       If every test designer had to analyse and predict the expected behaviour for every test case for every component, then test design would be very expensive
      The hardest part of test design is predicting the expected outcome, but we often have oracles that reduce the work they are:
Kiddie Testing : 
       Run the test and see what comes out
      If there is an outcome and especially the values of the internal variables, then it is much easier to validate that outcome by analysis and show it to be correct, then it is to predict what the outcome should be and validate the prediction
Regression Test Suites : 
      Today's software development and testing are dominated not by the design of new software but by rework and maintenance of existing software
        In such instance, most of the tests have been run on previous versions. Most of those tests should have the same outcome for the new version
         Outcome prediction is therefore needed only for changed parts of components
Purchased Suits and Oracles :
      Highly standardized software that differ only in implementation, often have commercially available test suites and oracles
       The most common examples are compilers for standard languages
Existing Program : 
          A working, trusted program is an excellent oracle
      The typical use is when the program is being rehosted to a new language operating system, environment, configuration with the intension that the behaviour should not change as a result of the rehosting
Share on Google Plus

About Data Sciences by Venu

Hi, My name is Venugopala Chary and I'm Currently working as Associate Professor in Reputed Engineerng College, Hyderabad. I have B.Tech and M.tech in regular from JNTU Hyderabad. I have 11 Years of Teaching Experience for both B.Tech and M.Tech Courses.
    Blogger Comment
    Facebook Comment

0 comments:

Post a Comment