ISTQB Foundation Level Exam Crash Course Part-19
This is Part 19 of 35 containing 5 Questions (Q. 91 to 95) with detailed explanation as expected in ISTQB Foundation Level Exam Latest Syllabus updated in 2011
Deep study of these 175 questions shall be of great help in getting success in ISTQB Foundation Level Exam
Q. 91: What is the purpose of using Modeling Tools?
Modeling tools are used primarily by developers during the analysis and design stages of the development life cycle. The reason modeling tools are included here is because they are very cost-effective at finding defects early in the development life cycle.
Their benefits are similar to those obtained from the use of reviews and inspections, in that modeling
tools allow omissions and inconsistencies to be identified and fixed early so that detailed design and programming can begin from a consistent and robust model. This in turn prevents fault multiplication that can occur if developers build from the wrong model.For instance, a visual modeling tool using UML can be used by designers to build a model of the software specification. The tool can map business processes to the system architecture model, which, in turn, enables programmers and testers to have a better and common understanding of what programs should do and what testing is required.
Similarly, the use of database, state or object models can help to identify what testing is required and can assist in checking whether tests cover all necessary transactions. Integration with test design tools may also enable modeling tools to support the generation of test cases.
<<<<<< =================== >>>>>>
Q. 92: What is the purpose of using Test Design Tools?
Test design tools are used to support the generation and creation of test cases. In order for the tool to generate test cases, a test basis needs to be input and maintained. Hence many test design tools are integrated with other tools that already contain details of the test basis such as:
1) Modeling tools;
2) Requirements management tools;
3) Static analysis tools;
4) Test management tools.
The level of automation can vary and depends upon the characteristics of the tool itself and the way in which the test basis is recorded in the tool. For example, some tools allow specifications or requirements to be specified in a formal language. This can allow test cases with inputs and expected results to be generated. Other test design tools allow a GUI model of the test basis to be created and then allow tests to be generated from this model.
Some tools – sometimes known as test frames merely generate a partly filled template from the requirement specification held in narrative form. The tester will then need to add to the template and copy and edit as necessary to create the test cases required.
Tests designed from database, object or state models held in modeling tools can be used to verify that the model has been built correctly and can be used to derive some test cases. Tests derived can be very thorough and give high levels of coverage in certain areas.
Some static analysis tools integrate with tools that generate test cases from an analysis of the code. These can include test-input values and expected results.
A test oracle is a type of test design tool that automatically generates expected results. However, these are rarely available as they perform the same function as the software under test.
Test oracles tend to be most useful for:
a) Replacement systems
b) Migrations
c) Regression testing
<<<<<< =================== >>>>>>
Q. 93: What is the purpose of using Test Data Preparation Tools?
Test data preparation tools are used by testers and developers to manipulate data so that the environment is in the appropriate state for the test to be run.
This can involve making changes to the field values in databases, data files, etc., and populating files with a spread of data, (including depersonalized dates of birth, names and addresses, etc. to support data anonymity).
<<<<<< =================== >>>>>>
Q. 94: What is the purpose of using Test Execution Tools?
Test execution tools allow test scripts to be run automatically or at least semi-automatically. A test script (written in a programming language or scripting language) is used to navigate through the system under test and to compare predefined expected outcomes with actual outcomes.
The results of the test run are written to a test log. Test scripts can then be amended and reused to run other or additional scenarios through the same system. Some tools offer GUI-based utilities that enable amendments to be made to scripts more easily than by changing code. These utilities may include:
1) Configuring the script to identify particular GUI objects;
2) Customizing the script to allow it to take specified actions when encountering particular GUI objects or messages;
3) Parameterising the script to read data from various sources.
<<<<<< =================== >>>>>>
Q. 95: What is the purpose of using Recording or Capture Playback Tools?
Record (or capture playback) tools can be used to record a test script and then play it back exactly as it was executed. However, a test script usually fails when played back owing to unexpected results or unrecognized objects. This may sound surprising but consider entering a new customer record onto a system:
1) When the script was recorded, the customer record did not exist. When the script is played back the system correctly recognizes that this customer record already exists and produces a different response, thus causing the test script to fail.
2) When a test script is played back and actual and expected results are compared a date or time may be displayed. The comparison facility will spot this difference and report a failure.
3) Other problems include the inability of test execution tools to recognize some types of GUI control or object. This might be able to be resolved by coding or reconfiguring the object characteristics (but this can be quite complicated and should be left to experts in the tool).
The expected results are not necessarily captured when recording user actions and therefore may not be compared during playback.
The recording of tests can be useful during exploratory testing for reproducing a defect or for documenting how to execute a test. In addition, such tools can be used to capture user actions so that the navigation through a system can be recorded. In both cases, the script can then be made more robust by a technical expert so that it handles valid system behaviors depending upon the inputs and the state of the system under test.
Part – 20 of the Crash Course – ISTQB Foundation Exam
Access The Full Database of Crash Course Questions for ISTQB Foundation Level Certification
An expert on R&D, Online Training and Publishing. He is M.Tech. (Honours) and is a part of the STG team since inception.