Mock Exam A Flashcards
Which one of the following answers describes a test condition?
a) A distinguishing characteristic of a component or system
b) A testable aspect of a component or system identified as a basis for testing
c) The degree to which a software product provides functions which meet stated and implied needs when the software is used under specified conditions
d) Test cases designed to execute combinations of conditions and actions resulting from them
a) Is not correct. Definition of feature according to glossary
b) Is correct. From glossary
c) Is not correct. Definition of functionality suitability according to glossary
d) Is not correct. Like Definition of Decision table testing according to glossary
Which of the following statements is a valid objective for testing?
a) The test should start as late as possible so that development had enough time to create a good product
b) To validate whether the test object works as expected by the users and other stakeholders
c) To prove that all possible defects are identified
d) To prove that any remaining defects will not cause any failures
a) Is not correct. Contradiction to principle 3: “Early testing saves time and money”
b) Is correct. This is one objective of testing
c) Is not correct. Principle #2 states that exhaustive testing is impossible, so one can never prove that all defects were identified
d) Is not correct. To make an assessment whether a defect will cause a failure or not, one must detect the defect first. Saying that no remaining defect will cause a failure implicitly means that all defects were found. This again contradicts principle #2
Which of the following statements correctly describes the difference between testing and debugging?
a) Testing identifies the source of defects; debugging analyzes the defects and proposes prevention activities
b) Dynamic testing shows failures caused by defects; debugging eliminates the defects, which are the source of failures
c) Testing removes faults; but debugging removes defects that cause the faults
d) Dynamic testing prevents the causes of failures; debugging removes the failures
a) Is not correct. Testing does not identify the source of defects, debugging identifies the source of defects
b) Is correct. Dynamic testing can show failures that are caused by defects in the software. Debugging eliminates the defects, which are the source of failures
c) Is not correct. Testing does not remove faults, but debugging removesfaults, which is synonyms for defects, that may cause the failures
d) Is not correct. Dynamic testing does not directly prevent the causes of failures (defects) but detects the presence of defects
Which one of the statements below describes the most common situation for a failure discovered during testing or in production?
a) The product crashed when the user selected an option in a dialog box
b) The wrong version of a compiled source code file was included in the build
c) The computation algorithm used the wrong input variables
d) The developer misinterpreted the requirement for the algorithm
a) Is correct. A crash is clearly noticeable by the user
b) Is not correct. This is a defect, not a failure since there is something wrong in the code. It may not result in a visible or noticeable failure, for example if the changes in the source code file are only in comments
c) Is not correct. The use of wrong input variables may not result in a visible or noticeable failure, for example if nobody uses this particular algorithm; or if the wrong input variable has a similar value to the correct input variable; or if the FALSE result of the algorithm is not used
d) Is not correct. This type of fault will not necessarily lead to a failure; for example, if no one uses this special algorithm
Mr. Test has been testing software applications on mobile devices for a period of 5 years. He has a wealth of experience in testing mobile applications and achieves better results in a shorter time than others. Over several months, Mr. Test did not modify the existing automated test cases and did not create any new test cases. This leads to fewer and fewer defects being found by executing the tests. What principle of testing did Mr. Test not observe?
a) Testing depends on the environment
b) Exhaustive testing is not possible
c) Repeating of same tests will not find new defects
d) Defects cluster together
a) Is not correct. Testing is context dependent, regardless of it being manual or automated (principle #6), but does not result in detecting a decreasing number of faults as described above
b) Is not correct. Exhaustive testing is impossible, regardless of the amount of effort put into testing (principle #2)
c) Is correct. Principle #5 says “If the same tests are repeated over and over again, eventually these tests no longer find any new defects. To detect new defects, existing tests and test data may need changing, and new tests may need to be written.” Automated regression testing of the same test cases will not bring new findings
d) Is not correct. ”Defect cluster together” (principle #4). A small number of modules usually contain most of the defects, but this does not mean that fewer and fewer defects will be found
In what way can testing be part of Quality Assurance?
a) It ensures that requirements are detailed enough
b) Testing reduces the risk of poor software quality
c) It ensures that standards in the organization are followed
d) It measures the quality of software in terms of number of executed test cases
a) Is not correct. Static testing (reviews) contributes, but could not ensure, that requirements are detailed enough
b) Is correct. Testing contributes to the achievement of quality in a variety of ways, e.g., such as reducing the risk of inadequate software quality
c) Is not correct. This is quality assurance but not testing
d) Is not correct. The quality cannot be measured by counting the number of executed test cases without knowing the outcome
Which of the following activities is part of the main activity “test analysis” in the test process?
a) Identifying any required infrastructure and tools
b) Creating test suites from test scripts
c) Analyzing lessons learned for process improvement
d) Evaluating the test basis for testability
a) Is not correct. This activity is performed during the test design activity (test design)
b) Is not correct. This activity is performed during the test implementation activity (test implementation)
c) Is not correct. This activity is performed during the test completion activity (test completion)
d) Is correct. This activity is performed during the test analysis activity (test analysis)
Match the following test work products (1-4) with the right description (A-D).
1. Test suite
2. Test case
3. Test script
4. Test charter
A. A set of test scripts to be executed in a specific test run
B. A set of instructions for the execution of a test
C. Contains expected results
D. Documentation of test activities in session-based exploratory testing
a) 1A, 2C, 3B, 4D
b) 1D, 2B, 3A, 4C
c) 1A, 2C, 3D, 4B
d) 1D, 2C, 3B, 4A
Glossary defines the following tests as:
* Test suite: “A set of test scripts or test procedures to be executed in a specific test run.” (1A)
* Test case: “A set of preconditions, inputs, actions (where applicable), expected results and post conditions, developed based on test conditions” (2C)
* Test script: “A sequence of instructions for the execution of a test” (3B)
* Test charter: “Documentation of test activities in session-based exploratory testing” (4D)
Thus:
a) Is correct
b) Is not correct
c) Is not correct
d) Is not correct
How can white-box testing be applied during user acceptance testing?
a) To check if large volumes of data can be transferred between integrated systems
b) To check if all code statements and code decision paths have been executed
c) To check if all work process flows have been covered
d) To cover all web page navigations
a) Is not correct. Relevant for integration testing
b) Is not correct. Relevant for component testing
c) Is correct. For acceptance testing, tests are designed to cover all workflows defined in the functional requirements documents.
d) Is not correct. Relevant for system testin
Which of the following statements comparing component testing and system testing is TRUE?
a) Component testing verifies the functionality of software modules, program objects, and classes that are separately testable, whereas system testing verifies interfaces between components and interactions between different parts of the system
b) Test cases for component testing are usually derived from component specifications, design specifications, or data models, whereas test cases for system testing are usually derived from requirement specifications or use cases
c) Component testing only focuses on functional characteristics, whereas system testing focuses on functional and non-functional characteristics
d) Component testing is the responsibility of the testers, whereas system testing typically is the responsibility of the users of the system
a) Is not correct. System testing does not test interfaces between components and interactions between different parts of the system; this is a target of integration tests
b) Is correct. Examples of work products that can be used as a test basis for component testing include detailed design, code, data model, component specifications. Examples of work products for system testing include system and software requirement specifications (functional and non-functional) use cases
c) Is not correct. Component testing does not ONLY focus on functional characteristics
d) Is not correct. Component tests are also executed by developers, whereas system testing typically is the responsibility of (independent) testers
Which one of the following is TRUE?
a) The purpose of regression testing is to check if the correction has been successfully implemented, while the purpose of confirmation testing is to confirm that the correction has no side effects
b) The purpose of regression testing is to detect unintended side effects, while the purpose of confirmation testing is to check if the system is still working in a new environment
c) The purpose of regression testing is to detect unintended side effects, while the purpose of confirmation testing is to check if the original defect has been fixed
d) The purpose of regression testing is to check if the new functionality is working, while the purpose of confirmation testing is to check if the original defect has been fixed
a) Is not correct. Regression testing does not check successful implementation of corrections and confirmation testing does not check for side effects
b) Is not correct. The statement about confirmation testing should be about regression testing
c) Is correct. See reasons from incorrect answers
d) Is not correct. Testing new functionality is not regression testing
Which one of the following is the BEST definition of an incremental development model?
a) Defining requirements, designing software and testing are done in phases where in each phase a piece of the system is added
b) A phase in the development process should begin when the previous phase is complete
c) Testing is viewed as a separate phase which takes place after development has been completed
d) Testing is added to development as an increment
a) Is correct. Incremental development involves establishing requirements, designing, building, and testing a system in pieces
b) Is not correct. This is a sequential model
c) Is not correct. This describes the waterfall model
d) Is not correct. Testing alone is not an increment/additional step in the development
Which of the following should NOT be a trigger for maintenance testing?
a) Decision to test the maintainability of the software
b) Decision to test the system after migration to a new operating platform
c) Decision to test if archived data is possible to be retrieved
d) Decision to test after “hot fixes”
a) Is correct. This is maintainability testing, not maintenance testing
b) Is not correct. This is a trigger for maintenance testing: Operational tests of the new environment as well as of the changed software
c) Is not correct. This is the trigger for maintenance testing: testing restore/retrieve procedures after archiving for long retention periods
d) Is not correct. This is the trigger for maintenance testing: Reactive modification of a delivered software product to correct emergency defects that have caused actual failures
Which of the following options are roles in a formal review?
a) Developer, Moderator, Review leader, Reviewer, Tester
b) Author, Moderator, Manager, Reviewer, Developer
c) Author, Manager, Review leader, Reviewer, Designer
d) Author, Moderator, Review leader, Reviewer, Scribe
a) Is not correct. Tester and developer are NOT roles in a formal review
b) Is not correct. Developer is NOT a role in a formal review
c) Is not correct. Designer is NOT a role in a formal review
d) Is correct. See reasons from incorrect answers
Which activities are carried out within the planning of a formal review?
a) Collection of metrics for the evaluation of the effectiveness of the review
b) Answer any questions the participants may have
c) Definition and Verification of fulfillment of entry criteria for the review
d) Evaluation of the review findings against the exit criteria
a) Is not correct. ‘Collection of metrics’ belongs to the main activity “Fixing and Reporting”
b) Is not correct. ‘Answer any question.’ belongs to the main activity “Initiate Review”
c) Is correct. The checking of entry criteria takes place in the planning of a formal review
d) Is not correct. The evaluation of the review findings against the exit criteria belongs to the main activity “Issue communication and analysis”