I have seen the following question and the answer on 'Oracle Assumption' for ISTQB Foundation Level exam (Source).
19 The oracle assumption:
- a) is that there is some existing system against which test output may be checked.
- b) is that the tester can routinely identify the correct outcome of a test.
- c) is that the tester knows everything about the software under test.
- d) is that the tests are reviewed by experienced testers.
According to the site, the answer is
- b) is that the tester can routinely identify the correct outcome of a test.
However, the ISTQB glossary says that a Test Oracle is :
A source to determine expected results to compare with the actual result of the software under test. An oracle may be the existing system (for a benchmark), other software, a user manual, or an individual's specialized knowledge, but should not be the code.
Another source says that the Oracle Assumption is :
the assumption that testers will (a) work out expected ourcomes in advance of test execution, as part of test case specification; and (b) avoid doing so by hand wherever possible.
I could not find any other exact definition for Oracle Assumption online.
I have two questions :
- Is the answer given to the MCQ is correct/incorrect? Why?
- What is the correct definition of Oracle Assumption for ISTQB - Foundation Level?