Вы находитесь на странице: 1из 111

ISTQB Foundation Level

(Version 2007) Index


Topic 1) Fundamentals of Testing 2) Testing throughout the software life cycle 3) Static Techniques 4) Test Design Techniques 5) Test management 6) Tool support for testing 7) Model Questions 8) Model Test -1 9) Model Test -2 10) Standards 11) Skill Test 12) Configuration management notes 13) Examination Guidelines (07 marks) (06 marks) (03 marks) (12 marks) (08 marks) (04 marks) page no 002 011 020 026 038 054 060 091 098 104 106 107 111

Important Terms:

1. Fundamentals of Testing
1

1.1 Why testing necessary? bug, defect, error, failure, mistake, quality, risk, software, testing and exhaustive testing. 1.2 What is testing? code, debugging, requirement, test basis, test case, test objective 1.3 Testing principles 1.4 Fundamental test process conformation testing, exit criteria, incident, regression testing, test condition, test coverage, test data, test execution, test log, test plan, test strategy, test summary report and testware. 1.5 The psychology of testing independence.

I) General testing principles


Principles A number of testing principles have been suggested over the past 40 years and offer general guidelines common for all testing. Principle 1 Testing shows presence of defects Testing can show that defects are present, but cannot prove that there are no defects. Testing reduces the probability of undiscovered defects remaining in the software but, even if no defects are found, it is not a proof of correctness. Principle 2 Exhaustive testing is impossible Testing everything (all combinations of inputs and preconditions) is not feasible except for trivial cases. Instead of exhaustive testing, risk analysis and priorities should be used to focus testing efforts. Principle 3 Early testing Testing activities should start as early as possible in the software or system development life cycle, and should be focused on defined objectives. Principle 4 Defect clustering A small number of modules contain most of the defects discovered during pre-release testing, or are responsible for the most operational failures. Principle 5 Pesticide paradox If the same tests are repeated over and over again, eventually the same set of test cases will no longer find any new defects. To overcome this pesticide paradox, the test cases need to be regularly reviewed and revised, and new and different tests need to be written to exercise different parts of the software or system to potentially find more defects. Principle 6 Testing is context dependent Testing is done differently in different contexts. For example, safety-critical software is tested differently from an e-commerce site.

Principle 7 Absence-of-errors fallacy Finding and fixing defects does not help if the system built is unusable and does not fulfill the users needs and expectations.

II) Fundamental test process


1) Test planning and control Test planning is the activity of verifying the mission of testing, defining the objectives of testing and the specification of test activities in order to meet the objectives and mission. It involves taking actions necessary to meet the mission and objectives of the project. In order to control testing, it should be monitored throughout the project. Test planning takes into account the feedback from monitoring and control activities. 2) Test analysis and design Test analysis and design is the activity where general testing objectives are transformed into tangible test conditions and test cases. Test analysis and design has the following major tasks: Reviewing the test basis (such as requirements, architecture, design, interfaces). Evaluating testability of the test basis and test objects. specification, behaviour and structure. Designing and prioritizing test cases. Identifying necessary test data to support the test conditions and test cases. Designing the test environment set-up and identifying any required infrastructure and tools.

Identifying and prioritizing test conditions based on analysis of test items, the

3) Test implementation and execution Developing, implementing and prioritizing test cases.

Developing and prioritizing test procedures, creating test data and, optionally,
preparing test harnesses and writing automated test scripts. Creating test suites from the test procedures for efficient test execution. Verifying that the test environment has been set up correctly.

Executing test procedures either manually or by using test execution tools,


according to the planned sequence.

Logging the outcome of test execution and recording the identities and versions of
the software under test, test tools and testware. Comparing actual results with expected results.

Reporting discrepancies as incidents and analyzing them in order to establish their


cause (e.g. a defect in the code, in specified test data, in the test document, or a mistake in the way the test was executed).

Repeating test activities as a result of action taken for each discrepancy. For

example, reexecution of a test that previously failed in order to confirm a fix (confirmation testing), execution of a corrected test and/or execution of tests in order to ensure that defects have not been introduced in unchanged areas of the software or that defect fixing did not uncover other defects (regression testing).

4) Evaluating exit criteria and reporting Checking test logs against the exit criteria specified in test planning. Assessing if more tests are needed or if the exit criteria specified should be changed. Writing a test summary report for stakeholders.

5) Test closure activities

Checking which planned deliverables have been delivered, the closure of incident
reports or raising of change records for any that remain open, and the documentation of the acceptance of the system. for later reuse. Handover of testware to the maintenance organization. test maturity.

Finalizing and archiving testware, the test environment and the test infrastructure

Analyzing lessons learned for future releases and projects, and the improvement of

III) The psychology of testing


Tests designed by the person(s) who wrote the software under test (low level of independence). Tests designed by another person(s) (e.g. from the development team). Tests designed by a person(s) from a different organizational group (e.g. an independent test team) or test specialists (e.g. usability or performance test specialists). Tests designed by a person(s) from a different organization or company (i.e. outsourcing or certification by an external body).

Questions:
1) When what is visible to end-users is a deviation from the specific or expected behavior, this is called: a) an error b) a fault c) a failure d) a defect

2) Regression testing should be performed: v) every week w) after the software has changed

x) as often as possible y) when the environment has changed z) when the project manager says a) v & w are true, x z are false b) w, x & y are true, v & z are false c) w & y are true, v, x & z are false d) w is true, v, x y and z are false 3) Testing should be stopped when: a) all the planned tests have been run b) time has run out c) all faults have been fixed correctly d) it depends on the risks for the system being tested 4) Consider the following statements about early test design: i. early test design can prevent fault multiplication ii. faults found during early test design are more expensive to fix iii. early test design can find faults iv. early test design can cause changes to the requirements v. early test design takes more effort a) i, iii & iv are true. Ii & v are false b) iii is true, I, ii, iv & v are false c) iii & iv are true. i, ii & v are false d) i, iii, iv & v are true, ii us false 5) The main focus of acceptance testing is: a) finding faults in the system b) ensuring that the system is acceptable to all users c) testing the system with other systems d) testing for a business perspective 6) The difference between re-testing and regression testing is a) re-testing is running a test again; regression testing looks for unexpected side effects b) re-testing looks for unexpected side effects; regression testing is repeating those tests c) re-testing is done after faults are fixed; regression testing is done earlier d) re-testing is done by developers, regression testing is done by independent testers 7) Expected results are: a) Only important in system testing b) only used in component testing c) never specified in advance d) most useful when specified in advance 8) The cost of fixing a fault: a) Is not important b) Increases as we move the product towards live use c) Decreases as we move the product towards live use d) Is more expensive if found in requirements than functional design 9) Fault Masking is a. Error condition hiding another error condition b. creating a test case which does not reveal a fault

c. masking a fault by developer d. masking a fault by a tester 10) One Key reason why developers have difficulty testing their own work is: a. Lack of technical documentation b. Lack of test tools on the market for developers c. Lack of training d. Lack of Objectivity 11) Enough testing has been performed when: a) Time runs out. b) The required level of confidence has been achieved. c) No more faults are found. d) The users wont find any serious faults. 12) Which of the following is false? a) In a system two different failures may have different severities. b) A system is necessarily more reliable after debugging for the removal of a fault. c) A fault need not affect the reliability of a system. d) Undetected errors may lead to faults and eventually to incorrect behavior. 13) Which of the following characterises the cost of faults? a) They are cheapest to find in the early development phases and the less expensive to fix. b) They are easiest to find during system testing but the most expensive to fix then. c) Faults are cheapest to find in the early development phases but the most expensive to fix then. d) Although faults are most expensive to find during early development phases, they are cheapest to fix then. 14) According to the ISTQB Glossary a risk relates to which of the following? a) b) c) d) Negative Negative Negative Negative feedback to the tester. consequences that will occur. consequences that could occur. consequences for the test object.

15) Ensuring that a test design start during the requirements definition phase is important to enable which of the following test objectives? a) b) c) d) Preventing defects in the system. Finding defects through dynamic testing. Gaining confidence in the system. Finishing the project on time.

16) A failure is: a) Found in the software; the result of an error. b) Departure from specified behavior. c) An incorrect step, process or data definition in a computer program. d) A human action that produces an incorrect result.

17) Faults found by users are due to: a. Poor quality software b. Poor software and poor testing

c. bad luck d. insufficient time for testing 18) Which of the following statements are true? a. Faults in program specifications are the most expensive to fix. b. Faults in code are the most expensive to fix. c. Faults in requirements are the most expensive to fix d. Faults in designs are the most expensive to fix. 19) COTS is known as: a. Commercial off the shelf software b. Compliance of the software c. Change control of the software d. Capable off the shelf software 20) Which is not the testing objective? a. Finding defects b. Gaining confidence about the level of quality and providing information c. Preventing defects. d. Debugging defects 21) Exhaustive Testing is a) Impractical but possible b) Practically possible c) Impractical and impossible d) Always possible 22) Which of the following is most important to promote and maintain good relationships between developers and testers? a) b) c) d) Understanding what Managers value about testing. Explaining test results in a neutral fashion. Identifying potential customer work-around for bugs. Promoting better quality software whenever possible.

23) According to ISTQB Glossary, the word Error is synonymous with which of the following? a) b) c) d) Failure Defect Mistake Bug

24) In prioritising what to test, the most important objective is to: a) Find as many faults as possible. b) Test high risk areas. c) Obtain good test coverage. d) Test whatever is easiest to test. 25) Incidents would not be raised against: a) Requirements b) Documentation c) Test cases d) Improvements suggested by users 26) Designing the test environment set-up and identifying any required infrastructure and tools are a part of which phase

a) Test Implementation and execution b) Test Analysis and Design c) Evaluating the Exit Criteria and reporting d) Test Closure Activities 27) Which of the following is not a part of the Test Implementation and Execution Phase? a) Creating test suites from the test cases b) Executing test cases either manually or by using test execution tools c) Comparing actual results d) Designing the Tests 28) Test Case are grouped into Manageable (and scheduled) units are called as a. Test Harness b. Test Suite c. Test Cycle d. Test Driver 29) Which of the following could be a reason for a failure 1) 2) 3) 4) 5) Testing fault Software fault Design fault Environment Fault Documentation Fault

a. 2 is a valid reason; 1,3,4 & 5 are not b. 1,2,3,4 are valid reasons; 5 is not c. 1,2,3 are valid reasons; 4 & 5 are not d. All of them are valid reasons for failure 30) Handover of Testware is a part of which Phase a) Test Analysis and Design b) Test Planning and control c) Test Closure Activities d) Evaluating exit criteria and reporting 31) An exhaustive test suit would include: a) All combination of input values and preconditions. b) All combination of input values and output values. c) All pairs of input values and preconditions. d) All states and state transitions. 32) Which of the following encourages objective testing? a) Unit Testing. b) System Testing. c) Independent Testing. d) Destructive Testing. 33) Consider the following list of test process activities: I Analysis and Design II Test Closure activities III Evaluating exit criteria and reporting IV Planning and Control

V Implementation and execution Which of the following places these in their logical sequence? a) I, II, III, IV and V b) IV, I, V, III and II c) IV, I, V, II and III d) I, IV, V, III and II 34) According to ISTQB Glossary, debugging: a) Is part of the fundamental test process. b) Includes the repair of the cause of a failure c) Involves intentionally adding known defects d) Follows the steps of a test procedure 35) Which of the following could be a root cause of a defect in financial software in which an incorrect interest rate is calculated? a) Insufficient funds were available to pay the interest rate calculated. b) Insufficient calculations of compound interest were included. c) Insufficient training was given to the developers concerning compound interest calculation rules. d) Incorrect calculators were used to calculate the expected results. 36) When should you stop testing? a) When the time for testing has run out b) When all planned tests have been run c) When the test completion criteria have been met d) When no faults have been found by the tests run 37) An incident logging system: a) Only records defects b) is of limited value c) is a valuable source of project information during testing if it contains all incidents d) Should be used only by the test team 38) The term confirmation testing is synonymous to a) Exploratory testing b) Regression testing c) Exhaustive testing d) Re- testing 39) Consider the following statements: 1i. an incident may be closed without being fixed. 2ii. Incidents may not be raised against documentation. 3iii. The final stage of incident tracking is fixing. 4iv. The incident record does not include information on test environments. a) b) c) d) ii is true, i, iii and iv are false i is true, ii, iii and iv are false i and iv are true, ii and iii are false i and ii are true, iii and iv are false

40) Which of the following is not a characteristic of software? a) Software is developed or engineered; it is not manufactured in the classic sense b) Software doesnt wear out with the time

c) The traditional industry is moving toward component based assembly, whereas most software continues to be custom built and the concept of component based assembly is still taking shape d) Software does not require maintenance 41) If the expected result is not specified then: a) We cannot run the test b) It may be difficult to repeat the test c) It may be difficult to determine if the test has passed or failed d) We cannot automate the user inputs 42) A reliable system will be one that: a) is unlikely to be completed on schedule b) is unlikely to cause a failure c) is likely to be fault free d) is likely to be liked by the users 43) What is the purpose of Exit Criteria? a) To determine when writing a test case is complete b) To determine when to stop the testing c) To ensure the test specification is complete d) To determine when to stop writing the test plan 44) What is the focus of Re-Testing? a) Re-Testing ensures the original fault has been removed b) Re-Testing prevents future faults c) Re-Testing looks for unexpected side effects d) Re-Testing ensures the original fault is still present 45) How is the amount of Re-Testing required normally defined? a) Discussions with the end users b) Discussions with the developers c) Metrics from Previous projects d) none of the above 46) A manifestation of an error in software is a) An Error b) A Fault c) A Failure d) An Action 47) If testing time is limited, we should a) Only test high risk areas b) Only test simple areas c) Only test low risk areas d) Only test complicated areas 48) The quality of the product is said to increase when? a) All faults have been reviewed b) All faults have been found c) All faults have been raised d) All faults have been rectified

10

49) Pick the best definition of quality a) Quality is job one b) Zero defects c) Conformance to requirements d) Work as designed 50) What is the Main reason for testing software before releasing it? a) To show the system will work after release b) To decide when software is of sufficient quality to release c) To find as many of bugs as possible before release d) To give information for a risk based decision about release 51) Select a reason that does not agree with the fact that complete testing is impossible: a) The domain of possible inputs is too large to test. b) Limited financial resources. c) There are too many possible paths through the program to test. d) The user interface issues (and thus the design issues) are too complex to completely test.

2. Testing throughout the software life cycle


Important Terms:
2.1 Software development models COTS, interactive-incremental development model, validation, verification, V-model. 2.2 Test levels Alfa testing, beta testing, component testing (also known as unit/module/program testing), driver, stub, field testing, functional requirement, non-functional requirement, integration, integration testing, robustness testing, system testing, test level, test-driven development, test environment, user acceptance testing. 2.3 Test types Black box testing, code coverage, functional testing, interoperability testing, load testing, maintainability testing, performance testing, portability testing, reliability testing, security testing, specification based testing, stress testing, structural testing, usability testing, white box testing 2.4 Maintenance testing Impact analysis, maintenance testing.

i) Software development models


a) V-model (sequential development model) Although variants of the V-model exist, a common type of V-model uses four test levels, corresponding to the four development levels. The four levels used in this syllabus are: component (unit) testing; integration testing;

11

system testing; acceptance testing.

b) Iterative-incremental development models Iterative-incremental development is the process of establishing requirements, designing, building and testing a system, done as a series of shorter development cycles. Examples are: prototyping, rapid application development (RAD), Rational Unified Process (RUP) and agile development models. c) Testing within a life cycle model In any life cycle model, there are several characteristics of good testing: For every development activity there is a corresponding testing activity. Each test level has test objectives specific to that level. The analysis and design of tests for a given test level should begin during the corresponding development activity. Testers should be involved in reviewing documents as soon as drafts are available in the development life cycle.

ii) Test levels


a) Component testing Component testing searches for defects in, and verifies the functioning of, software (e.g. modules, programs, objects, classes, etc.) that are separately testable. Component testing may include testing of functionality and specific non-functional characteristics, such as resource-behaviour (e.g. memory leaks) or robustness testing, as well as structural testing (e.g. branch coverage). One approach to component testing is to prepare and automate test cases before coding. This is called a test-first approach or test-driven development. b) Integration testing Integration testing tests interfaces between components, interactions with different parts of a system, such as the operating system, file system, hardware, or interfaces between systems. Component integration testing tests the interactions between software components and is done after component testing; System integration testing tests the interactions between different systems and may be done after system testing. Testing of specific non-functional characteristics (e.g. performance) may be included in integration testing. c) System testing System testing is concerned with the behaviour of a whole system/product as defined by the scope of a development project or programme.

12

In system testing, the test environment should correspond to the final target or production environment as much as possible in order to minimize the risk of environmentspecific failures not being found in testing. System testing may include tests based on risks and/or on requirements specifications, business processes, use cases, or other high level descriptions of system behaviour, interactions with the operating system, and system resources. System testing should investigate both functional and non-functional requirements of the system. d) Acceptance testing Acceptance testing is often the responsibility of the customers or users of a system; other stakeholders may be involved as well. The goal in acceptance testing is to establish confidence in the system, parts of the system or specific non-functional characteristics of the system Contract and regulation acceptance testing Contract acceptance testing is performed against a contracts acceptance criteria for producing custom-developed software. Acceptance criteria should be defined when the contract is agreed. Regulation acceptance testing is performed against any regulations that must be adhered to, such as governmental, legal or safety regulations. Alpha and beta (or field) testing Alpha testing is performed at the developing organizations site. Beta testing, or field testing, is performed by people at their own locations. Both are performed by potential customers, not the developers of the product.

iii) Test types


a) Testing of function (functional testing) The functions that a system, subsystem or component are to perform may be described in work products such as a requirements specification, use cases, or a functional specification, or they may be undocumented. The functions are what the system does. A type of functional testing, security testing, investigates the functions (e.g. a firewall) relating to detection of threats, such as viruses, from malicious outsiders. Another type of functional testing, interoperability testing, evaluates the capability of the software product to interact with one or more specified components or systems.

b) Testing of non-functional software characteristics (non-functional testing) Non-functional testing includes, but is not limited to, performance testing, load testing, stress testing, usability testing, maintainability testing, reliability testing and portability testing. It is the testing of how the system works. Non-functional testing may be performed at all test levels. c) Testing of software structure/architecture (structural testing)

13

Structural (white-box) testing may be performed at all test levels. Structural techniques are best used after specification-based techniques, in order to help measure the thoroughness of testing through assessment of coverage of a type of structure. Structural testing approaches can also be applied at system, system integration or acceptance testing levels (e.g. to business models or menu structures). d) Testing related to changes (confirmation testing (retesting) and regression testing) After a defect is detected and fixed, the software should be retested to confirm that the original defect has been successfully removed. This is called confirmation. Debugging (defect fixing) is a development activity, not a testing activity. Regression testing is the repeated testing of an already tested program, after modification, to discover any defects introduced or uncovered as a result of the change(s). It is performed when the software, or its environment, is changed. Regression testing may be performed at all test levels, and applies to functional, nonfunctional and structural testing.

iv) Maintenance testing


Once deployed, a software system is often in service for years or decades. During this time the system and its environment are often corrected, changed or extended. Modifications include planned enhancement changes (e.g. release-based), corrective and emergency changes, and changes of environment, Maintenance testing for migration (e.g. from one platform to another) should include operational tests of the new environment, as well as of the changed software. Maintenance testing for the retirement of a system may include the testing of data migration or archiving if long data-retention periods are required. Maintenance testing may be done at any or all test levels and for any or all test types.

Questions:
1) What are the good practices for testing with in the software development life cycle? Early test analysis and design Different test levels are defined with specific objectives Testers will start to get involved as soon as coding is done. A and B above 2) Which option best describes objectives for test levels with a life cycle model? a) Objectives should be generic for any test level b) Objectives are the same for each test level. c) The objectives of a test level dont need to be defined in advance d) Each level has objectives specific to that level.

a) b) c) d)

14

3) Which of the following is a type? a) Component testing b) Functional testing c) System testing d) Acceptance testing 4) Non-functional system testing includes: a) Testing to see where the system does not function properly b) testing quality attributes of the system including performance and usability c) testing a system feature using only the software required for that action d) testing for functions that should not exist 5) Beta testing is: a) Performed by customers at their own site b) Performed by customers at their software developers site c) Performed by an independent test team d) Performed as early as possible in the lifecycle 6) Which of the following is not part of performance testing: a) Measuring response time b) Measuring transaction rates c) Recovery testing d) Simulating many users 7) Which one of the following statements about system testing is NOT true? a) System tests are often performed by independent teams. b) Functional testing is used more than structural testing. c) Faults found during system tests can be very expensive to fix. d) End-users should be involved in system tests. 8) Integration testing in the small: a) Tests the individual components that have been developed. b) Tests interactions between modules or subsystems. c) Only uses components that form part of the live system. d) Tests interfaces to other systems. 9) Alpha testing is: a) Post-release testing by end user representatives at the developers site. b) The first testing that is performed. c) Pre-release testing by end user representatives at the developers site. d) Pre-release testing by end user representatives at their sites.

10) Software testing activities should start a) As soon as the code is written b) during the design stage c) when the requirements have been formally documented d) as soon as possible in the development life cycle 11) consider the following statements about regression tests I. they may useful be automated if they are well designed. II. They are the same as confirmation tests

15

III. They are a way to reduce the risk of a change having an adverse affect elsewhere in the system IV. They are only effective if automated. Which pairs of statements are true? a) I and II b) I and III c) II and III d) II and IV 12) Which of these statements about functional testing is true? a) Structural testing is more important than functional testing as it addresses the code b) Functional testing is useful throughout the life cycle and can be applied by business annalists, developers, testers and users c) Functional testing is more powerful than static testing as you actually run the system and see what happens. d) Inspection is a functional testing 13) Consider the following statements about maintenance testing: I. It requires both re-test and regression test and may require additional new tests II. It is testing to show how easy it will be to maintain the system III) It is difficult to scope and therefore needs careful risk and impact analysis IV. It need not be done for emergency bug fixes. Which of the statement are true? a) I and III b) I and IV c) II and III d) II and IV 14) Which of the following is NOT part of system testing: a) business process-based testing b) performance, load and stress testing c) requirements-based testing d) top-down integration testing 15) To test a function, the programmer has to write a _________, which calls the function to be tested and passes it test data. a. Stub b. Driver c. Proxy d. None of the above 16) Which of the following is a form of functional testing? a) Boundary value analysis b) Usability testing c) Performance testing d) Security testing 17) Which one of the following describes the major benefit of verification early in the life cycle?

16

a) It allows the identification of changes in user requirements. b) It facilitates timely set up of the test environment. c) It reduces defect multiplication. d) It allows testers to become involved early in the project. 18) The most important thing about early test design is that it: a) makes test preparation easier. b) means inspections are not required. c) can prevent fault multiplication. d) will find all faults. 19). Which of the following statements is not true a. performance testing can be done during unit testing as well as during the testing of whole system b. The acceptance test does not necessarily include a regression test c. Verification activities should not involve testers (reviews, inspections etc) d. Test environments should be as similar to production environments as possible 20) Which of the following is NOT a type of non-functional test? a. State-Transition b. Usability c. Performance d. Reliability 21) Which of the following is not the integration strategy? a. Design based b. Big-bang c. Bottom-up d. Top-down 22) Big bang approach is related to a) Regression testing b) Inter system testing c) Re-testing d). Integration testing 23) Which life cycle model is basically driven by schedule and budget risks This statement is best suited for a) Water fall model b) Spiral model c) Incremental model d) V-Model 24) Use cases can be performed to test A. Performance testing B. Unit testing C. Business scenarios D. Static testing 25) Which testing is performed at an external site? A. Unit testing

17

B. Regression testing C. Beta testing D. Integration testing 26) Functional system testing is: a) Testing that the system functions with other systems b) Testing that the components that comprise the system function together c) Testing the end to end functionality of the system as a whole d) Testing the system performs functions within specified response times 27) Maintenance testing is: a) Updating tests when the software has changed b) testing a released system that has been changed c) testing by users to ensure that the system meets a business need d) testing to maintain business advantage 28) Which of the following uses Impact Analysis most? a)component testing b)non-functional system testing c)user acceptance testing d)maintenance testing 29) Which of the following is NOT part of system testing? a) business process-based testing b) performance, load and stress testing c) usability testing d) top-down integration testing 30) Which of the following list contains only non-functional tests? a. compatibility testing, usability testing, performance testing b. System testing, performance testing c. Load testing, stress testing, component testing, portability testing d. Testing various configurations, beta testing, load testing 31) V-Model is: a. A software development model that illustrates how testing activities integrate with software development phases b. A software life-cycle model that is not relevant for testing c. The official software development and testing life-cycle model of ISTQB d. A testing life cycle model including unit, integration, system and acceptance phases 32) Maintenance testing is: a. Testing management b. Synonym of testing the quality of service c. Triggered by modifications, migration or retirement of existing software d. Testing the level of maintenance by the vendor 33) Link Testing is also called as: a) Component Integration testing b) Component System Testing c) Component Sub System Testing

18

d) Maintenance testing 34) Component Testing is also called as: i. Unit Testing ii. Program Testing iii. Module Testing iv. System Component Testing Which of the following is correct? a) i, ii, iii are true and iv is false b) i, ii, iii, iv are false c) i, ii, iv are true and iii is false d) All of above is true 35) Match every stage of the software Development Life cycle with the Testing Life cycle: i. Global design ii. System Requirements iii. Detailed design iv. User Requirements a) Unit tests b) Acceptance tests c) System tests d) Integration tests a) i -d , ii-a , iii-b , iv-c b) i -c , ii-d , iii-a , iv-b c) i -d , ii-c , iii-a , iv-b d) i -c , ii-d , iii-b , iv-a 36) Which of these is a functional test? a) Measuring response time on an online booking system b) Checking the effect of high volumes of traffic in a call-center system. c) Checking the on-line booking screens information and the database contacts against the information on the letter to the customers d) Checking how easy the system is to use

Important Terms:

3) Static Techniques

3.1 Static techniques and the test process dynamic testing, static testing, static technique 3.2 Review process entry criteria, formal review, informal review, inspection, metric, moderator/inspection leader, peer review, reviewer, scribe, technical review, walkthrough. 3.3 Static analysis by tools Compiler, complexity, control flow, data flow, static analysis

19

I) Phases of a formal review


1) Planning 2) Kick-off 3) Individual preparation 4) Review meeting 5) Rework 6) Follow-up Selecting the personal, allocating roles, defining entry and exit criteria for more formal reviews etc. Distributing documents, explaining the objectives, checking entry criteria etc. Work done by each of the participants on their own work before the review meeting, questions and comments etc. Discussion or logging, make recommendations for handling the defects, or make decisions about the defects etc. Fixing defects found, typically done by the author Fixing defects found, typically done by the author Checking the defects have been addressed, gathering metrics and checking on exit criteria

II) Roles and responsibilities


Manager Moderator Author Reviewers Scribe (recorder) Decides on execution of reviews, allocates time in projects schedules, and determines if the review objectives have been met Leads the review, including planning, running the meeting, follow-up after the meeting. The writer or person with chief responsibility of the document(s) to be reviewed. Individuals with a specific technical or business background. Identify defects and describe findings. Documents all the issues, problems

III) Types of review


Informal review Walkthrough Technical review No formal process, pair programming or a technical lead reviewing designs and code. Main purpose: inexpensive way to get some benefit. Meeting led by the author, scenarios, dry runs, peer group, openended sessions. Main purpose: learning, gaining understanding, defect finding Documented, defined defect detection process, ideally led by trained moderator, may be performed as a peer review, pre meeting preparation, involved by peers and technical experts Main purpose: discuss, make decisions, find defects, solve technical problems and check conformance to specifications and standards Led by trained moderator (not the author), usually peer examination, defined roles, includes metrics, formal process, premeeting preparation, formal follow-up process Main purpose: find defects.

Inspection

Note: walkthroughs, technical reviews and inspections can be performed within a peer group-colleague at the same organization level. This type of review is called a peer review.

IV) Success factors for reviews 20

Each review has a clear predefined objective. The right people for the review objectives are involved. Defects found are welcomed, and expressed objectively. People issues and psychological aspects are dealt with (e.g. making it a positive experience for the author). Review techniques are applied that are suitable to the type and level of software work products and reviewers. Checklists or roles are used if appropriate to increase effectiveness of defect identification. Training is given in review techniques, especially the more formal techniques, such as inspection. Management supports a good review process (e.g. by incorporating adequate time for review activities in project schedules). There is an emphasis on learning and process improvement.

V) Cyclomatic Complexity
The number of independent paths through a program Cyclomatic Complexity is defined as: L N + 2P L = the number of edges/links in a graph N = the number of nodes in a graphs P = the number of disconnected parts of the graph (connected components) Alternatively one may calculate Cyclomatic Complexity using decision point rule Decision points +1 Cyclomatic Complexity and Risk Evaluation 1 to 10a simple program, without very much risk 11 to 20 a complex program, moderate risk 21 to 50, a more complex program, high risk > 50an un-testable program (very high risk)

Questions
1) Which of the following statements is NOT true? a) inspection is the most formal review process b) inspections should be led by a trained leader c) managers can perform inspections on management documents d) inspection is appropriate even when there are no written documents 2) Which expression best matches the following characteristics or review processes: 1. 2. 3. 4. led by author undocumented no management participation led by a trained moderator or leader

21

5. uses entry exit criteria s) inspection t) peer review u) informal review v) walkthrough a) s = 4, t = 3, u = 2 and 5, v = 1 b) s = 4 and 5, t = 3, u = 2, v = 1 c) s = 1 and 5, t = 3, u = 2, v = 4 d) s = 5, t = 4, u = 3, v = 1 and 2 3) Could reviews or inspections be considered part of testing: a) No, because they apply to development documentation b) No, because they are normally applied before testing c) No, because they do not apply to the test documentation d) Yes, because both help detect faults and improve quality 4) In a review meeting a moderator is a person who a. Takes minutes of the meeting b. Mediates among people c. Takes telephone calls d. writes the documents to be reviewed 5) Which of the following statements about reviews is true? a) Reviews cannot be performed on user requirements specifications. b) Reviews are the least effective way of testing code. c) Reviews are unlikely to find faults in test plans. d) Reviews should be performed on specifications, code, and test plans. 6) What is the main difference between a walkthrough and an inspection? a) An inspection is lead by the author, whilst a walkthrough is lead by a trained moderator. b) An inspection has a trained leader, whilst a walkthrough has no leader. c) Authors are not present during inspections, whilst they are during walkthroughs. d) A walkthrough is lead by the author, whilst an inspection is lead by a trained moderator. 7) Which of the following is a static test? a. code inspection b. coverage analysis c. usability assessment d. installation test 8) Who is responsible for document all the issues, problems and open point that were identified during the review meeting A. Moderator B. Scribe C. Reviewers D. Author 9) What is the main purpose of Informal review? A. Inexpensive way to get some benefit B. Find defects

22

C. Learning, gaining understanding, effect finding D. Discuss, make decisions and solve technical problems 10) Which of the following is not a static testing technique? a. Error guessing b. Walkthrough c. Data flow analysis d. Inspections 11) Inspections can find all the following except a. Variables not defined in the code b. Spelling and grammar faults in the documents c. Requirements that have been omitted from the design documents d. How much of the code has been covered 12) Which of the following artifacts can be examined by using review techniques? a) Software code b) Requirements specification c) Test designs d) All of the above 13) Which is not a type of review? a) Walkthrough b) Inspection c) Management approval d) Informal review 14) Which of the following statements about early test design are true and which are false? 1. Defects found during early test design are more expensive to fix 2. Early test design can find defects 3. Early test design can cause to the changes to the requirements 4. Early test design can takes more effort a) b) c) d) 1 and 3 are true. 2 and 4 are false. 2 is true. 1, 3 and 4 are false. 2 and 3 are true. 1 and 4 are false. 2, 3, and 4 are true. 1 is false

15) Static code analysis typically identifies all but one of the following problems. Which is it? a) Unreachable code b) Faults in requirements c) Undeclared variables d) Too few comments 16) What is the best description of static analysis? a) The analysis of bath programs b) The reviewing of test plans c) The analysis of program code or other software artifacts d) The use of black-box testing 17) What is the more important factor for successful performance of review? a) A separate scribe during the logging meeting

23

b) Trained participants and review leaders c) The availability of tools to support the review process d) A reviewed test plan 18) Code Walkthrough is a. type of dynamic testing b. type of static testing c. neither dynamic nor static d. performed by the testing team 19) Static Analysis a. same as static testing b. done by the developers c. both a and b d. none of the above 20) Which review is inexpensive? a. Informal Review b. Walkthrough c. Technical review d. Inspection 21) Who should have technical or Business background? a. Moderator b. Author c. Reviewer d. Recorder 22) The person who leads the review of the document(s), planning the review, running the meeting and follow-up after the meeting a. Reviewer b. Author c. Moderator d. Auditor

23) Peer Reviews are also called as: a) Inspection b) Walkthrough c) Technical Review d) Formal Review 24) The Kick Off phase of a formal review includes the following a) Explaining the objective b) Fixing defects found typically done by author c) Follow up d) Individual Meeting preparations 25) Success Factors for a review include: i. Each Review does not have a predefined objective ii. Defects found are welcomed and expressed objectively iii. Management supports a good review process. iv. There is an emphasis on learning and process improvement.

24

a) ii, iii, iv are correct and i is incorrect b) iii , i , iv is correct and ii is incorrect c) i , iii , iv are correct and ii is in correct d) i, ii are correct and iii, iv are incorrect 26) Why static testing described as complementary for dynamic testing? a) Because they share the aim of identifying defects and finds the same types of defect. b) Because they have different aims and differ in the types of defect they find. c) Because they have different aims but find the same types of defect. d) Because they share the aim of identifying defects but differ in the types of defect they find. 27) Which of the following statements regarding static testing is false? a) Static testing requires the running of tests through the code b) Static testing includes desk checking c) Static testing includes techniques such as reviews and inspections d) Static testing can give measurements such as cyclomatic complexity 28) Which of the following is true about Formal Review or Inspection? i. Led by Trained Moderator (not the author). ii. No Pre Meeting Preparations iii. Formal Follow up process. iv. Main objective is to find defects a) ii is true and i, iii, iv are false b) i, iii, iv are true and ii is false c) i, iii, iv are false and ii is true d) iii is true and I, ii, iv are false 29) The Phases of formal review process is mentioned below arrange them in the correct order. i. Planning ii. Review Meeting iii. Rework iv. Individual Preparations v. Kick Off vi. Follow up a) i,ii,iii,iv,v,vi b) vi,i,ii,iii,iv,v c) i,v,iv,ii,iii,vi d) i,ii,iii,v,iv,vi 30) Which of the following is Key Characteristics of Walk Through? a) Scenario, Dry Run, Peer Group b) Pre Meeting Preparations c) Formal Follow up Process d) Includes Metrics

4) Test Design Techniques


Important Terms:
4.1 The test development process Test case specification, test design, test execution schedule, test procedure specification, test script, traceability. 4.2 Categories of test design techniques

25

Black-box test design technique, specification-based test design technique, white-box test design technique, structure-based test design technique, experience-based test design technique. 4.3 Specification-based or black box techniques Boundary value analysis, decision table testing, equivalence partitioning, state transition testing, use case testing. 4.4 Structure-based or white box techniques Code coverage, decision coverage, statement coverage, structure-based testing. 4.5 Experience-based techniques Exploratory testing, fault attack. 4.6 Choosing test techniques No specific terms.

Test Design Techniques o Specification-based/Black-box techniques


o o Structure-based/White-box techniques Experience-based techniques

I) Specification-based/Black-box techniques
o o o o Equivalence partitioning Boundary value analysis Decision table testing State transition testing Use case testing Inputs to the software or system are divided in to groups that are expected to exhibit similar behavior Equivalence partitions or classes can be found for both valid data and invalid data Partitions can also be identified for outputs, internal values, time related values and for interface values. Equivalence partitioning is applicable all levels of testing

Equivalence partitioning

Boundary value analysis o o o o Behavior at the edge of each equivalence partition is more likely to be incorrect. The maximum and minimum values of a partition are its boundary values. A boundary value for a valid partition is a valid boundary value; the boundary of an invalid partition is an invalid boundary value. Boundary value analysis can be applied at all test levels It is relatively easy to apply and its defect-finding capability is high

26

This technique is often considered as an extension of equivalence partitioning.

Decision table testing o o o o In Decision table testing test cases are designed to execute the combination of inputs Decision tables are good way to capture system requirements that contain logical conditions. The decision table contains triggering conditions, often combinations of true and false for all input conditions It maybe applied to all situations when the action of the software depends on several logical decisions

State transition testing o o In state transition testing test cases are designed to execute valid and invalid state transitions A system may exhibit a deferent response on current conditions or previous history. In this case, that aspect of the system can be shown as a state transition diagram. State transition testing is much used in embedded software and technical automation.

Use case testing o o o o o In use case testing test cases are designed to execute user scenarios A use case describes interactions between actors, including users and the system Each use case has preconditions, which need to be met for a use case to work successfully. A use case usually has a mainstream scenario and some times alternative branches. Use cases, often referred to as scenarios, are very useful for designing acceptance tests with customer/user participation

II) Structure-based/White-box techniques


o Statement testing and coverage o Decision testing and coverage o Other structure-based techniques condition coverage multi condition coverage

Statement testing and coverage: Statement An entity in a programming language, which is typically the smallest indivisible unit of execution

27

Statement coverage The percentage of executable statements that have been exercised by a test suite Statement testing A white box test design technique in which test cases are designed to execute statements Decision testing and coverage Decision A program point at which the control flow has two or more alternative routes A node with two or more links to separate branches Decision Coverage The percentage of decision outcomes that have been exercised by a test suite 100% decision coverage implies both 100% branches coverage and 100% statement coverage Decision testing A white box test design technique in which test cases are designed to execute decision outcomes. Other structure-based techniques Condition A logical expression that can be evaluated as true or false Condition coverage The percentage of condition outcomes that have been exercised by a test suite Condition testing A white box test design technique in which test cases are designed to execute condition outcomes Multiple condition testing A white box test design technique in which test cases are designed to execute combinations of single condition outcomes

III) Experience-based techniques


o Error guessing o Exploratory testing Error guessing o Error guessing is a commonly used experience-based technique o Generally testers anticipate defects based on experience, these defects list can be built based on experience, available defect data, and from common knowledge about why software fails. Exploratory testing o Exploratory testing is concurrent test design, test execution, test logging and learning , based on test charter containing test objectives and carried out within time boxes

28

o It is approach that is most useful where there are few or inadequate specifications and serve time pressure.

Questions
1) Order numbers on a stock control system can range between 10000 and 99999 inclusive. Which of the following inputs might be a result of designing tests for only valid equivalence classes and valid boundaries: a) 1000, 5000, 99999 b) 9999, 50000, 100000 c) 10000, 50000, 99999 d) 10000, 99999 e) 9999, 10000, 50000, 99999, 10000 2) Which of the following is NOT a black box technique: a) Equivalence partitioning b) State transition testing c) Arc testing d) Boundary value analysis 3) Error guessing is best used a) As the first approach to deriving test cases b) After more formal techniques have been applied c) By inexperienced testers d) After the system has gone live e) Only by end users 4) Which is not true-The black box tester a. should be able to understand a functional specification or requirements document b. should be able to understand the source code. c. is highly motivated to find faults d. is creative to find the systems weaknesses 5) A test design technique is a. a process for selecting test cases b. a process for determining expected outputs c. a way to measure the quality of software d. a way to measure in a test plan what has to be done 6) Which of the following is true? a. Component testing should be black box, system testing should be white box. b. if u find a lot of bugs in testing, you should not be very confident about the quality of software c. the fewer bugs you find, the better your testing was d. the more tests you run, the more bugs you will find. 7) What is the important criterion in deciding what testing technique to use? a. how well you know a particular technique b. the objective of the test c. how appropriate the technique is for testing the application d. whether there is a tool to support the technique 8) Which of the following is a black box design technique? a. statement testing b. equivalence partitioning

29

c. error- guessing d. usability testing 9) A program validates a numeric field as follows: values less than 10 are rejected, values between 10 and 21 are accepted, values greater than or equal to 22 are rejected Which of the following input values cover all of the equivalence partitions? a. 10, 11, 21 b. 3, 20, 21 c. 3, 10, 22 d. 10, 21, 22 10) Using the same specifications as question 9, which of the following covers the MOST boundary values? a. 9,10,11,22 b. 9,10,21,22 c. 10,11,21,22 d. 10,11,20,21 11) Error guessing: a) supplements formal test design techniques. b) can only be used in component, integration and system testing. c) is only performed in user acceptance testing. d) is not repeatable and should not be used. 12) Which of the following is NOT a white box technique? a) Statement testing b) Path testing c) Data flow testing d) State transition testing 13) Data flow analysis studies: a) possible communications bottlenecks in a program. b) the rate of change of data values as a program executes. c) the use of data on paths through the code. d) the intrinsic complexity of the code. 14) In a system designed to work out the tax to be paid: An employee has 4000 of salary tax free. The next 1500 is taxed at 10% The next 28000 is taxed at 22% Any further amount is taxed at 40% Which of these groups of numbers would fall into the same equivalence class? a) 4800; 14000; 28000 b) 5200; 5500; 28000 c) 28001; 32000; 35000 d) 5800; 28000; 32000 15) Test cases are designed during: a) test recording. b) test planning. c) test configuration. d) test specification.

30

16) An input field takes the year of birth between 1900 and 2004 The boundary values for testing this field are a. 0,1900,2004,2005 b. 1900, 2004 c. 1899,1900,2004,2005 d. 1899, 1900, 1901,2003,2004,2005 17) Boundary value testing a. Is the same as equivalence partitioning tests? b. Test boundary conditions on, below and above the edges of input and output equivalence classes c. Tests combinations of input circumstances d. Is used in white box testing strategy 18) When testing a grade calculation system, a tester determines that all scores from 90 to 100 will yield a grade of A, but scores below 90 will not. This analysis is known as: a) Equivalence partitioning b) Boundary value analysis c) Decision table d) Hybrid analysis 19) Which technique can be used to achieve input and output coverage? It can be applied to human input, input via interfaces to a system, or interface parameters in integration testing. a) Error Guessing b) Boundary Value Analysis c) Decision Table testing d) Equivalence partitioning 20) Features to be tested, approach, item pass/fail criteria and test deliverables should be specified in which document? a) Test case specification b) Test procedure specification c) Test plan d) Test design specification 21) Which specification-based testing techniques are most closely related to each other? a) Decision tables and state transition testing b) Equivalence partitioning and state transition testing c) Decision tables and boundary value analysis d) Equivalence partitioning and boundary value analysis 22) assume postal rates for light letters are: $0.25 up to 10 grams $0.35 up to 50 grams $0.45 up to 75 grams $0.55 up to 100 grams Which test inputs (in grams) would be selected using boundary value analysis? a) 0, 9, 19, 49, 50, 74, 75, 99, 100 b) 10, 50, 75, 100, 250, 1000 c) 0, 1, 10, 11, 50, 51, 75, 76, 100, 101

31

d) 25, 26, 35, 36, 45, 46, 55, 56 23) If the temperature falls below 18 degrees, the heating system is switched on. When the temperature reaches 21 degrees, the heating system is switched off. What is the minimum set of test input values to cover all valid equivalence partitions? a) 15, 19 and 25 degrees b) 17, 18, 20 and 21 degrees c) 18, 20 and 22 degrees d) 16 and 26 degrees 24) What is a test condition? a) An input, expected outcome, precondition and post condition b) The steps to be taken to get the system to a given point c) Something that can be tested d) A specific state of the software, ex: before a test can be run 25) What is a key characteristic of specification-based testing techniques? a) Tests are derived from information about how the software is constructed b) Tests are derived from models (formal or informal) that specify the problem to be solved by the software or its components c) Tests are derived based on the skills and experience of the tester d) Tests are derived from the extent of the coverage of structural elements of the system or components 26) Why are both specification-based and structure-based testing techniques useful? a) They find different types of defect. b) using more techniques is always better c) both find the same types of defect. d) Because specifications tend to be unstructured 27) Find the Equivalence class for the following test case Enter a number to test the validity of being accepting the numbers between 1 and 99 a) All numbers < 1 b) All numbers > 99 c) Number = 0 d) All numbers between 1 and 99 28) What is the relationship between equivalence partitioning and boundary value analysis techniques? a) Structural testing b) Opaque testing c) Compatibility testing d) All of the above 29) Suggest an alternative for requirement traceability matrix a) Test Coverage matrix b) Average defect aging c) Test Effectiveness d) Error discovery rate

32

30) The following defines the statement of what the tester is expected to accomplish or validate during testing activity a) Test scope b) Test objective c) Test environment d) None of the above 31) One technique of Black Box testing is Equivalence Partitioning. In a program statement that accepts only one choice from among 10 possible choices, numbered 1 through 10, the middle partition would be from _____ to _____ a) 4 to 6 b) 0 to 10 c) 1 to 10 d) None of the above 32) Test design mainly emphasizes all the following except a) Data planning b) Test procedures planning c) Mapping the requirements and test cases d) Data synchronization 33) Deliverables of test design phase include all the following except a) Test data b) Test data plan c) Test summary report d) Test procedure plan 34) Test data planning essentially includes a) Network b) Operational Model c) Boundary value analysis d) Test Procedure Planning 35) Test coverage analysis is the process of a) Creating additional test cases to increase coverage b) Finding areas of program exercised by the test cases c) Determining a quantitative measure of code coverage, which is a direct measure of quality. d) All of the above. 36) Branch Coverage a) another name for decision coverage b) another name for all-edges coverage c) another name for basic path coverage d) all the above 37) The following example is a if (condition1 && (condition2 || function1())) statement1; else statement2; (Testing concepts) a) Decision coverage b) Condition coverage c) Statement coverage d) Path Coverage

33

38) Test cases need to be written for a) invalid and unexpected conditions b) valid and expected conditions c) both a and b d) none of these 39) Path coverage includes a) statement coverage b) condition coverage c) decision coverage d) none of these 40) The benefits of glass box testing are a) Focused Testing, Testing coverage, control flow b) Data integrity, Internal boundaries, algorithm specific testing c) Both a and b d) Either a or b 41) Find the invalid equivalence class for the following test case Draw a line up to the length of 4 inches a) Line with 1 dot-width b) Curve c) line with 4 inches d) line with 1 inch. 42) Error seeding a) Evaluates the thoroughness with which a computer program is tested by purposely inserting errors into a supposedly correct program. b) Errors inserted by the developers intentionally to make the system malfunctioning. c) for identifying existing errors d) Both a and b 43) Which of the following best describes the difference between clear box and opaque box? 1. Clear box is structural testing, opaque box is Ad-hoc testing 2. Clear box is done by tester, and opaque box is done by developer 3. Opaque box is functional testing, clear box is exploratory testing a) 1 b) 1 and 3 c) 2 d) 3 44) What is the concept of introducing a small change to the program and having the effects of that change show up in some test? a) Desk checking b) Debugging a program c) A mutation error d) Introducing mutation 45) How many test cases are necessary to cover all the possible sequences of statements (paths) for the following program fragment? Assume that the two conditions are independent of each other : - if (Condition 1)

34

then statement 1 else statement 2 fi if (Condition 2) then statement 3 fi a. 1 test case b. 3 Test Cases c. 4 Test Cases d. Not achievable 46) Given the following code, which is true about the minimum number of test cases required for full statement and branch coverage: Read P Read Q IF P+Q > 100 THEN Print Large ENDIF If P > 50 THEN Print P Large ENDIF a) 1 test for statement coverage, 3 for branch coverage b) 1 test for statement coverage, 2 for branch coverage c) 1 test for statement coverage, 1 for branch coverage d) 2 tests for statement coverage, 3 for branch coverage e) 2 tests for statement coverage, 2 for branch coverage 47) Given the following: Switch PC on Start outlook IF outlook appears THEN Send an email Close outlook a) 1 test for statement coverage, 1 for branch coverage b) 1 test for statement coverage, 2 for branch coverage c) 1 test for statement coverage. 3 for branch coverage d) 2 tests for statement coverage, 2 for branch coverage e) 2 tests for statement coverage, 3 for branch coverage 48) If a candidate is given an exam of 40 questions, should get 25 marks to pass (61%) and should get 80% for distinction, what is equivalence class? A. 23, 24, 25 B. 0, 12, 25 C. 30, 36, 39 D. 32, 37, 40 49) Consider the following statements: i. 100% statement coverage guarantees 100% branch coverage. ii. 100% branch coverage guarantees 100% statement coverage. iii. 100% branch coverage guarantees 100% decision coverage.

35

iv. 100% decision coverage guarantees 100% branch coverage. v. 100% statement coverage guarantees 100% decision coverage. a) b) c) d) ii is True; i, iii, iv & v are False i & v are True; ii, iii & iv are False ii & iii are True; i, iv & v are False ii, iii & iv are True; i & v are False

50) Which statement about expected outcomes is FALSE? a) Expected outcomes are defined by the software's behavior b) Expected outcomes are derived from a specification, not from the code c) Expected outcomes should be predicted before a test is run d) Expected outcomes may include timing constraints such as response times 51) Which of the following is not a white box testing? a) Random testing b) Data Flow testing c) Statement testing d) Syntax testing 52) If the pseudo code below were a programming language, how many tests are required to achieve 100% statement coverage? 1. 2. 3. 4. 5. 6. If x=3 then Display_messageX; If y=2 then Display_messageY; Else Display_messageZ;

a. 1 b. 2 c. 3 d. 4 53) Using the same code example as question 17, how many tests are required to achieve 100% branch/decision coverage? a. 1 b. 2 c. 3 d. 4 54) Which of the following technique is NOT a black box technique? a) Equivalence partitioning b) State transition testing c) LCSAJ d) Syntax testing 55) Given the following code, which is true? IF A>B THEN C=AB ELSE C=A+B

36

ENDIF Read D IF C = D THEN Print Error ENDIF a) 1 test for statement coverage, 1 for branch coverage b) 2 tests for statement coverage, 2 for branch coverage c) 2 tests for statement coverage, 3 for branch coverage d) 3 tests for statement coverage, 3 for branch coverage e) 3 tests for statement coverage, 2 for branch coverage 56) Consider the following: Pick up and read the news paper Look at what is on television If there is a program that you are interested in watching then switch the television on and watch the program Otherwise Continue reading the news paper If there a crossword in the news paper then try and complete the crossword a) SC = 1 and DC = 3 b) SC = 1 and DC = 2 c) SC = 2 and DC = 2 d) SC = 2 and DC = 3 57) The specification: an integer field shall contain values from and including 1 to and including 12 (number of the month) Which equivalence class partitioning is correct? a) Less than 1, 1 through 12, larger than 12 b) Less than 1, 1 through 11, larger than 12 c) Less than 0, 1 through 12, larger than 12 d) Less than 1, 1 through 11, and above 58) Analyze the following highly simplified procedure: Ask: What type of ticket do you require, single or return? IF the customer wants return Ask: What rate, Standard or Cheap-day? IF the customer replies Cheap-day Say: That will be 11:20 ELSE Say: That will be 19:50 ENDIF ELSE Say: That will be 9:75 ENDIF Now decide the minimum number of tests that are needed to ensure that all the questions have been asked, all combinations have occurred and all replies given.

37

a) 3 b) 4 c) 5 d) 6

5) Test management
Important terms:
5.1 Test organization Tester, test leader, test manager 5.2 Test planning and estimation Test approach 5.3 Test progress monitoring and control Defect density, failure rate, test control, test monitoring, test report. 5.4 Configuration management Configuration management, version control 5.5 Risk and testing Risk, product risk, project risk, risk-based testing 5.6 Incident Management Incident logging, incident management

1) Test organization
a) Test organization and independence
The effectiveness of finding defects by testing and reviews can be improved by using independent testers. Options for independence are: No independent testers. Developers test their own code. Independent testers within the development teams.

Independent test team or group within the organization, reporting to project


management or executive management Independent testers from the business organization or user community.

Independent test specialists for specific test targets such as usability testers,

security testers or certification testers (who certify a software product against standards and regulations). Independent testers outsourced or external to the organization.

The benefits of independence include: Independent testers see other and different defects, and are unbiased.

An independent tester can verify assumptions people made during specification and
implementation of the system.

38

Drawbacks include: Isolation from the development team (if treated as totally independent). Independent testers may be the bottleneck as the last checkpoint. Developers may lose a sense of responsibility for quality.

b) Tasks of the test leader and tester


Test leader tasks may include: Coordinate the test strategy and plan with project managers and others. Write or review a test strategy for the project, and test policy for the organization. Contribute the testing perspective to other project activities, such as integration planning. risks including selecting test approaches, estimating the time, effort and cost of testing, acquiring resources, defining test levels, cycles, and planning incident management. monitor the test results and check the exit criteria.

Plan the tests considering the context and understanding the test objectives and

Initiate the specification, preparation, implementation and execution of tests, Adapt planning based on test results and progress (sometimes documented in
status reports) and take any action necessary to compensate for problems. Set up adequate configuration management of testware for traceability. of the testing and the product.

Introduce suitable metrics for measuring test progress and evaluating the quality
Decide what should be automated, to what degree, and how. Select tools to support testing and organize any training in tool use for testers. Decide about the implementation of the test environment. Write test summary reports based on the information gathered during testing.

Tester tasks may include: Review and contribute to test plans. Analyze, review and assess user requirements, specifications and models for testability. Create test specifications. network management).

Set up the test environment (often coordinating with system administration and
Prepare and acquire test data. and document the deviations from expected results.

Implement tests on all test levels, execute and log the tests, evaluate the results
Use test administration or management tools and test monitoring tools as required. Automate tests (may be supported by a developer or a test automation expert).

39

Measure performance of components and systems (if applicable). Review tests developed by others.

Note: People who work on test analysis, test design, specific test types or test automation may be specialists in these roles. Depending on the test level and the risks related to the product and the project, different people may take over the role of tester, keeping some degree of independence. Typically testers at the component and integration level would be developers; testers at the acceptance test level would be business experts and users, and testers for operational acceptance testing would be operators.

c) Defining skills test staff need


Now days a testing professional must have application or business domain knowledge and Technology expertise apart from Testing Skills

2) Test planning and estimation


a) Test planning activities
Determining the scope and risks, and identifying the objectives of testing. of the test levels and entry and exit criteria.

Defining the overall approach of testing (the test strategy), including the definition
Integrating and coordinating the testing activities into the software life cycle activities: acquisition, supply, development, operation and maintenance. the test activities should be done, and how the test results will be evaluated. Scheduling test analysis and design activities. Scheduling test implementation, execution and evaluation. Assigning resources for the different activities defined. Defining the amount, level of detail, structure and templates for the test documentation. defect resolution and risk issues.

Making decisions about what to test, what roles will perform the test activities, how

Selecting metrics for monitoring and controlling test preparation and execution, Setting the level of detail for test procedures in order to provide enough
information to support reproducible test preparation and execution.

b) Exit criteria

The purpose of exit criteria is to define when to stop testing, such as at the end of a test level or when a set of tests has a specific goal. Typically exit criteria may consist of: Thoroughness measures, such as coverage of code, functionality or risk. Estimates of defect density or reliability measures. Cost. Residual risks, such as defects not fixed or lack of test coverage in certain areas. Schedules such as those based on time to market.

c) Test estimation

40

Two approaches for the estimation of test effort are covered in this syllabus:

The metrics-based approach: estimating the testing effort based on metrics of former or similar projects or based on typical values.

The expert-based approach: estimating the tasks by the owner of these tasks or by experts. Once the test effort is estimated, resources can be identified and a schedule can be drawn up. The testing effort may depend on a number of factors, including:

Characteristics of the product: the quality of the specification and other information used for test models (i.e. the test basis), the size of the product, the complexity of the problem domain, the requirements for reliability and security, and the requirements for documentation. Characteristics of the development process: the stability of the organization, tools used, test process, skills of the people involved, and time pressure. The outcome of testing: the number of defects and the amount of rework required.

d) Test approaches (test strategies)


One way to classify test approaches or strategies is based on the point in time at which the bulk of the test design work is begun: Preventative approaches, where tests are designed as early as possible.

Reactive approaches, where test design comes after the software or system has
been produced. Typical approaches or strategies include:

Analytical approaches, such as risk-based testing where testing is directed to areas of greatest risk Model-based approaches, such as stochastic testing using statistical information about failure rates (such as reliability growth models) or usage (such as operational profiles). Methodical approaches, such as failure-based (including error guessing and faultattacks), experienced-based, check-list based, and quality characteristic based. Process- or standard-compliant approaches, such as those specified by industryspecific standards or the various agile methodologies. Dynamic and heuristic approaches, such as exploratory testing where testing is more reactive to events than pre-planned, and where execution and evaluation are concurrent tasks.

41

Consultative approaches, such as those where test coverage is driven primarily by the advice and guidance of technology and/or business domain experts outside the test team. Regression-averse approaches, such as those that include reuse of existing test material, extensive automation of functional regression tests, and standard test suites.

Different approaches may be combined, for example, a risk-based dynamic approach. The selection of a test approach should consider the context, including:

Risk of failure of the project, hazards to the product and risks of product failure to humans, the environment and the company. Skills and experience of the people in the proposed techniques, tools and methods. The objective of the testing endeavour and the mission of the testing team. Regulatory aspects, such as external and internal regulations for the development process. The nature of the product and the business.

3) Test progress monitoring and control


a) Test progress monitoring

Percentage of work done in test case preparation (or percentage of planned test cases prepared). Percentage of work done in test environment preparation. Test case execution (e.g. number of test cases run/not run, and test cases passed/failed). Defect information (e.g. defect density, defects found and fixed, failure rate, and retest results). Test coverage of requirements, risks or code. Subjective confidence of testers in the product. Dates of test milestones. Testing costs, including the cost compared to the benefit of finding the next defect or to run the next test.

b) Test Reporting What happened during a period of testing, such as dates when exit criteria were met. Analyzed information and metrics to support recommendations and decisions about future actions, such as an assessment of defects remaining, the economic benefit of continued testing, outstanding risks, and the level of confidence in tested software.

Metrics should be collected during and at the end of a test level in order to assess:

42

The adequacy of the test objectives for that test level. The adequacy of the test approaches taken. The effectiveness of the testing with respect to its objectives.

c) Test control Test control describes any guiding or corrective actions taken as a result of information and metrics gathered and reported. Actions may cover any test activity and may affect any other software life cycle activity or task. Examples of test control actions are: Making decisions based on information from test monitoring. Re-prioritize tests when an identified risk occurs (e.g. software delivered late). Change the test schedule due to availability of a test environment. Set an entry criterion requiring fixes to have been retested (confirmation tested) by a developer before accepting them into a build.

4) Configuration management
The purpose of configuration management is to establish and maintain the integrity of the products (components, data and documentation) of the software or system through the project and product life cycle. For testing, configuration management may involve ensuring that:

All items of testware are identified, version controlled, tracked for changes, related to each other and related to development items (test objects) so that traceability can be maintained throughout the test process. All identified documents and software items are referenced unambiguously in test documentation

For the tester, configuration management helps to uniquely identify (and to reproduce) the tested item, test documents, the tests and the test harness. During test planning, the configuration management procedures and infrastructure (tools) should be chosen, documented and implemented.

5) Risk and testing


a) Project risks
Project risks are the risks that surround the projects capability to deliver its objectives, such as: Organizational factors: skill and staff shortages; personal and training issues; political issues, such as o problems with testers communicating their needs and test results; o failure to follow up on information found in testing and reviews (e.g. not

43

improving development and testing practices).

improper attitude toward or expectations of testing (e.g. not appreciating the value of finding defects during testing).

Technical issues: problems in defining the right requirements; the extent that requirements can be met given existing constraints; the quality of the design, code and tests. Supplier issues: failure of a third party; contractual issues.

b) Product risks
Potential failure areas (adverse future events or hazards) in the software or system are known as product risks, as they are a risk to the quality of the product, such as: Failure-prone software delivered. The potential that the software/hardware could cause harm to an individual or company. Poor software characteristics (e.g. functionality, reliability, usability and performance). Software that does not perform its intended functions.

Risks are used to decide where to start testing and where to test more; testing is used to reduce the risk of an adverse effect occurring, or to reduce the impact of an adverse effect. Product risks are a special type of risk to the success of a project. Testing as a risk-control activity provides feedback about the residual risk by measuring the effectiveness of critical defect removal and of contingency plans. A risk-based approach to testing provides proactive opportunities to reduce the levels of product risk, starting in the initial stages of a project. It involves the identification of product risks and their use in guiding test planning and control, specification, preparation and execution of tests. In a risk-based approach the risks identified may be used to: Determine the test techniques to be employed. Determine the extent of testing to be carried out. Prioritize testing in an attempt to find the critical defects as early as possible. Determine whether any non-testing activities could be employed to reduce risk (e.g. providing training to inexperienced designers).

Risk-based testing draws on the collective knowledge and insight of the project stakeholders to determine the risks and the levels of testing required to address those risks. To ensure that the chance of a product failure is minimized, risk management activities provide a disciplined approach to:

44

Assess (and reassess on a regular basis) what can go wrong (risks). Determine what risks are important to deal with. Implement actions to deal with those risks.

In addition, testing may support the identification of new risks, may help to determine what risks should be reduced, and may lower uncertainty about risks.

6) Incident management
Since one of the objectives of testing is to find defects, the discrepancies between actual and expected outcomes need to be logged as incidents. Incidents should be tracked from discovery and classification to correction and confirmation of the solution. In order to manage all incidents to completion, an organization should establish a process and rules for classification. Incidents may be raised during development, review, testing or use of a software product. They may be raised for issues in code or the working system, or in any type of documentation including requirements, development documents, test documents, and user information such as Help or installation guides. Incident reports have the following objectives: Provide developers and other parties with feedback about the problem to enable identification, isolation and correction as necessary. Provide test leaders a means of tracking the quality of the system under test and the progress of the testing. Provide ideas for test process improvement.

Details of the incident report may include: Date of issue, issuing organization, and author. Expected and actual results. Identification of the test item (configuration item) and environment. Software or system life cycle process in which the incident was observed. Description of the incident to enable reproduction and resolution, including logs, database dumps or screenshots. Scope or degree of impact on stakeholder(s) interests. Severity of the impact on the system. Urgency/priority to fix. Status of the incident (e.g. open, deferred, duplicate, waiting to be fixed, fixed awaiting retest, closed). Conclusions, recommendations and approvals. Global issues, such as other areas that may be affected by a change resulting from the incident. Change history, such as the sequence of actions taken by project team members with respect to the incident to isolate, repair, and confirm it as fixed.

45

References, including the identity of the test case specification that revealed the problem.

Questions
1) The following list contains risks that have been identified for a software product to be developed. Which of these risks is an example of a product risk? a) Not enough qualified testers to complete the planned tests b) Software delivery is behind schedule c) Threat to a patients life d) 3rd party supplier does not supply as stipulated 2) Which set of metrics can be used for monitoring of the test execution? a) Number of detected defects, testing cost; b) Number of residual defects in the test object. c) Percentage of completed tasks in the preparation of test environment; test cases prepared d) Number of test cases run / not run; test cases passed / failed 3) A defect management system shall keep track of the status of every defect registered and enforce the rules about changing these states. If your task is to test the status tracking, which method would be best? a) Logic-based testing b) Use-case-based testing c) State transition testing d) Systematic testing according to the V-model 4) Why can be tester dependent on configuration management? a) Because configuration management assures that we know the exact version of the testware and the test object b) Because test execution is not allowed to proceed without the consent of the change control board c) Because changes in the test object are always subject to configuration management d) Because configuration management assures the right configuration of the test tools 5) What test items should be put under configuration management? a) The test object, the test material and the test environment b) The problem reports and the test material c) Only the test objects. The test cases need to be adapted during agile testing d) The test object and the test material 6) Which of the following can be root cause of a bug in a software product? (I) The project had incomplete procedures for configuration management. (II) The time schedule to develop a certain component was cut. (III) The specification was unclear (IV) Use of the code standard was not followed up (V) The testers were not certified a) (I) and (II) are correct b) (I) through (IV) are correct c) (III) through (V) are correct

46

d) (I), (II) and (IV) are correct 7) Which of the following is most often considered as components interface bug? a) For two components exchanging data, one component used metric units, the other one used British units b) The system is difficult to use due to a too complicated terminal input structure c) The messages for user input errors are misleading and not helpful for understanding the input error cause d) Under high load, the system does not provide enough open ports to connect to 8) Which of the following project inputs influence testing? (I) contractual requirements (II) Legal requirements (III) Industry standards (IV) Application risk (V) Project size a) (I) through (III) are correct b) All alternatives are correct c) (II) and (V) are correct d) (I), (III) and (V) are correct 9) What is the purpose of test exit criteria in the test plan? a) To specify when to stop the testing activity b) To set the criteria used in generating test inputs c) To ensure that the test case specification is complete d) To know when a specific test has finished its execution 10) Which of the following items need not to be given in an incident report? a) The version number of the test object b) Test data and used environment c) Identification of the test case that failed d) The location and instructions on how to correct the fault 11) Why is it necessary to define a Test Strategy? a) As there are many different ways to test software, thought must be given to decide what will be the most effective way to test the project on hand. b) Starting testing without prior planning leads to chaotic and inefficient test project c) A strategy is needed to inform the project management how the test team will schedule the test-cycles d) Software failure may cause loss of money, time, business reputation, and in extreme cases injury and death. It is therefore critical to have a proper test strategy in place 12) IEEE 829 test plan documentation standard contains all of the following except: a) test items b) test deliverables c) test tasks d) test environment e) test specification 13) Which of the following is NOT part of configuration management: a) status accounting of configuration items b) auditing conformance to ISO9001 c) identification of test versions

47

d) record of changes to documentation over time 14) What is the purpose of test completion criteria in a test plan: a) to know when a specific test has finished its execution b) to ensure that the test case specification is complete c) to know when test planning is complete d) to plan when to stop testing 15) Test managers should not: a) report on deviations from the project plan b) sign the system off for release c) re-allocate resource to meet original plans d) raise incidents on faults that they have found e) provide information for risk analysis and quality improvement 16) What information need not be included in a test incident report: a) how to fix the fault b) how to reproduce the fault c) test environment details d) the actual and expected outcomes 17) Which of the following is NOT included in the Test Plan document of the Test Documentation Standard: a) Test items (i.e. software versions) b) What is not to be tested c) Test environments d) Quality plans e) Schedules and deadlines 18) Which of the following is NOT true of incidents? a) Incident resolution is the responsibility of the author of the software under test. b) Incidents may be raised against user requirements. c) Incidents require investigation and/or correction. d) Incidents are raised when expected and actual results differ. 19) Which of the following would NOT normally form part of a test plan? a) Features to be tested b) Incident reports c) Risks d) Schedule 20) A configuration management system would NOT normally provide: a) linkage of customer requirements to version numbers. b) Facilities to compare test results with expected results. c) The precise differences in versions of software component source code. d) Restricted access to the source code library. 21) Testware (test cases, test dataset) a) needs configuration management just like requirements, design and code b) should be newly constructed for each new version of the software c) is needed only until the software is released into production or use

48

d) does not need to be documented and commented, as it does not form part of the released software system 22) Defect Density calculated in terms of a) The number of defects identified in a component or system divided by the size of the component or the system b) The number of defects found by a test phase divided by the number found by that test phase and any other means after wards c) The number of defects identified in the component or system divided by the number of defects found by a test phase d) The number of defects found by a test phase divided by the number found by the size of the system 23) An expert based test estimation is also known as a) Narrow band Delphi b) Wide band Delphi c) Bespoke Delphi d) Robust Delphi 24) During the testing of a module tester X finds a bug and assigned it to developer. But developer rejects the same, saying that its not a bug. What X should do? a) Report the issue to the test manager and try to settle with the developer. b) Retest the module and confirm the bug c) Assign the same bug to another developer d) Send to the detailed information of the bug encountered and check the reproducibility 25) The primary goal of comparing a user manual with the actual behavior of the running program during system testing is to a) Find bugs in the program b) Check the technical accuracy of the document c) Ensure the ease of use of the document d) Ensure that the program is the latest version 26) You are the test manager and you are about the start the system testing. The developer team says that due to change in requirements they will be able to deliver the system to you for testing 5 working days after the due date. You can not change the resources (work hours, test tools, etc.) What steps you will take to be able to finish the testing in time. a) Tell to the development team to deliver the system in time so that testing activity will be finish in time. b) Extend the testing plan, so that you can accommodate the slip going to occur c) Rank the functionality as per risk and concentrate more on critical functionality testing d) Add more resources so that the slippage should be avoided 27) Item transmittal report is also known as a) Incident report b) Release note c) Review report

49

d) Audit report 28) The bug tracking system will need to capture these phases for each bug. I. Phase injected II. Phase detected III. Phase fixed IV. Phase removed a) I, II and III b) I, II and IV c) II, III and IV d) I, III and IV 29) Which are not the project risks a) Supplier issues b) Organization factors c) Technical issues d) Error-prone software delivered 30) Poor software characteristics are a) Only Project risks b) Only Product risks c) Project risks and Product risks d) Project risks or Product risks 31) Bug life cycle a) Open, Assigned, Fixed, Closed b) Open, Fixed, Assigned, Closed c) Assigned, Open, Closed, Fixed d) Assigned, Open, Fixed, Closed 32) Which is not the fundamental test process a) Planning and control b) Test closure activities c) Analysis and design d) None 33) A project that is in the implementation phase is six weeks behind schedule. The delivery date for the product is four months away. The project is not allowed to slip the delivery date or compromise on the quality standards established for this product. Which of the following actions would bring this project back on schedule? a) Eliminate some of the requirements that have not yet been implemented. b) Add more engineers to the project to make up for lost work. c) Ask the current developers to work overtime until the lost work is recovered. d) Hire more software quality assurance personnel. 34) A Project risk includes which of the following:

50

a) Organizational Factors b) Poor Software characteristics c) Error Prone software delivered. d) Software that does not perform its intended functions 35) In a risk-based approach the risks identified may be used to : i. Determine the test technique to be employed ii. Determine the extent of testing to be carried out iii. Prioritize testing in an attempt to find critical defects as early as possible. iv. Determine the cost of the project a) ii is True; i, iii, iv & v are False b) i,ii,iii are true and iv is false c) ii & iii are True; i, iv are False d) ii, iii & iv are True; i is false 36) Which of the following is the task of a Tester? i. Interaction with the Test Tool Vendor to identify best ways to leverage test tool on the project. ii. Prepare and acquire Test Data iii. Implement Tests on all test levels, execute and log the tests. iv. Create the Test Specifications a) i, ii, iii is true and iv is false b) ii,iii,iv is true and i is false c) i is true and ii,iii,iv are false d) iii and iv is correct and i and ii are incorrect 37) Which of the following is not a major task of Exit criteria? a) Checking test logs against the exit criteria specified in test planning. b) Logging the outcome of test execution. c) Assessing if more tests are needed. d) Writing a test summary report for stakeholders. 38) Reporting Discrepancies as incidents is a part of which phase :a) Test Analysis and Design b) Test Implementation and execution c) Test Closure Activities d) Evaluating exit criteria and reporting 39) Which of the following items would not come under Configuration Management? a) Operating systems b) Test documentation c) Live data d) User requirement document 40) Which of the following is a major task of test planning? a) Determining the test approach. b) Preparing test specifications. c) Evaluating exit criteria and reporting. d) Measuring and analyzing results.

51

41) What is the MAIN purpose of a Master Test Plan? a) To communicate how incidents will be managed. b) To communicate how testing will be performed. c) To produce a test schedule. d) To produce a work breakdown structure. 42) In a REACTIVE approach to testing when would you expect the bulk of the test design work to be begun? a) After the software or system has been produced. b) During development. c) As early as possible. d) During requirements analysis. 43) What is the main purpose of impact analysis for testers? a) To determine the programming effort needed to make the changes. b) To determine what proportion of the changes need to be tested. c) To determine how much the planned changes will affect users. d) To determine how the existing system may be affected by changes. 44) What is the difference between a project risk and a product risk? a) Project risks are potential failure areas in the software or system; product risks are risks that surround the projects capability to deliver its objectives. b) Project risks are the risks that surround the projects capability to deliver its objectives; product risks are potential failure areas in the software or system. c) Project risks are typically related to supplier issues, organizational factors and technical issues; product risks are typically related to skill and staff shortages. d) Project risks are risks that delivered software will not work; product risks are typically related to supplier issues, organizational factors and technical issues. 45) Which of the following is a benefit of independent testing? a) Code cannot be released into production until independent testing is complete. b) Testing is isolated from development. c) Developers do not have to take as much responsibility for quality. d) Independent testers see other and different defects, and are unbiased. 46) Which is the MOST important advantage of independence in testing? a) An independent tester may find defects more quickly than the person who wrote the software. b) An independent tester may be more focused on showing how the software works than the person who wrote the software. c) An independent tester may be more effective and efficient because they are less familiar with the software than the person who wrote it. d) An independent tester may be more effective at finding defects missed by the person who wrote the software. 47) For testing, which of the options below best represents the main concerns of Configuration Management? i. All items of testware are identified and version controlled; ii. All items of testware are used in the final acceptance test; iii. All items of testware are stored in a common repository; iv. All items of testware are tracked for change; v. All items of testware are assigned to a responsible owner; vi. All items of testware are related to each other and to development items. a) i, iv, vi.

52

b) ii, iii, v. c) i, iii, iv. d) iv, v, vi. 48) Which one is not the task of test leader? a. Coordinate the test strategy and plan with project managers and others b. Decide about the implementation of the test environment c. Write test summary reports d. Review and contribute to test plans 49) Defect Tracking a) Is the communication channel between test team and development team b) Is the communication channel between testing team and the rest of the team c) Is the communication channel between the testing team and end users d) all of the above 50) What needs to be done when there is an insufficient time for testing? 1) Do Ad-hoc testing 2) Do usability testing 3) Do sanity testing 4) Do a risk based analysis to prioritize a) 1 and 2 b) 3 & 4 c) All of the above d) None of the above 51) Which of the following is LEAST likely to be used during software maintenance? a) Project management plan. b) Customer support hot line. c) Software problem reports. d) Change control board. 52) Test planning should begin a) At the same time that requirement definitions begins b) When building starts c) When code build is complete d) After shipping the first version

Important Terms:

6) Tool support for testing

6.1 Types of test tool Configuration management tool, debugging tool, dynamic analysis tool, incident management tool, load testing tool, modeling tool, monitoring tool, performance testing tool, probe effect, requirement management tool, review tool, static analysis tool, stress testing tool, test comparator, test data preparation tool, test design tool, test harness, test execution tool, test management tool, unit test framework tool. 6.2 Effective use of tools: potential benefits and risks Data driven (testing), keyword-driven (testing), scripting language

53

6.3 introducing a tool into an organization

Types of test tool


management of testing and tests Requirement management tools Incident management tools Configuration management tools Review tools Static analysis tools (D) Modeling tools (D) Test design tools Test data preparation tools Test execution tools Test harness/unit test framework tools (D) Test comparators Coverage measurement tools (D) Security tools Dynamic analysis tools Performance/Load/Stress Testing tools Monitoring tools Special tools for web-based applications Special tools for specific development flat forms Special tools for embedded systems

Static testing

Test specification Test execution and logging

Performance and monitoring

Specific application areas

Tool support using other tools

Test Tools and their purposes


Requirement management tools Incident management tools Configuration management tools Review tools Static analysis tools (D) Modeling tools (D) Test design tools Test data preparation tools Test execution tools Store requirements, check for consistency, allow requirements to be prioritized, trace changes, coverage of requirements etc. Store and manage incident reports, facilitating prioritization, assessment of actions to people and attribution of status etc. Store information about versions and builds of software and testware; enable traceability between testware and software work products etc. Store information, store and communicate review comments etc. The enforcement of coding standards, the analysis of structures and dependencies, aiding in understanding the code etc. Validate models of the software, find defects in data model, state model or an object model etc. Generate test inputs or executable tests, generate expected out comes etc. Preparing test data, Manipulate databases, files or data transmissions to set up test data etc. Record tests, Automated test execution, use inputs and expected outcomes, compare results with expected outcomes, repeat tests, dynamic comparison, manipulate the tests using scripting language etc. Test components or part of a system by simulating the environment, provide an execution

Test harness/unit test framework tools (D)

54

Test comparators Coverage measurement tools (D) Security tools Dynamic analysis tools (D) Performance/Load/Stress Testing tools

Monitoring tools

Tool support using other tools

framework in middleware etc. Determine differences between files, databases or test results post-execution comparison, may use test oracle if it is automated etc. Measure the percentage of specific types of code structure (ex: statements, branches or decisions, and module or function calls) Check for computer viruses and denial of service attacks, search for specific vulnerabilities of the system etc. Detect memory leaks, identify time dependencies and identify pointer arithmetic errors. Measure load or stress, Monitor and report on how a system behaves a variety of simulated usage conditions, simulate a load on an application/a database/or a system environment, repetitive execution of tests etc. Continuously analyze, verify and report on specific system resources; store information about the version and build of the software and testware, and enable traceability. Some tools use other tools (Ex: QTP uses excel sheet and SQL tools)

Potential benefits and risks of tool support for testing


Benefits: o Repetitive work is reduced o Greater consistency and repeatability o Objective assessment o Ease of access to information about tests or testing Risks: o Unrealistic expectations for the tool o Underestimating the time and effort needed to achieve significant and continues benefits from the tool o Underestimating the effort required to maintain the test assets generated by the tool o Over-reliance on the tool Special considerations for some types of tools Following tools have special considerations Test execution tools Performance testing tools Static testing tools Test management tools

Introducing a tool into an organization


The following factors are important in selecting a tool: o o o Assessment of the organization maturity Identification of the areas within the organization where tool support will help to improve testing process Evaluation of tools against clear requirements and objective criteria

55

o o o

Proof-of-concept to see whether the product works as desired and meets the requirements and objectives defined for it Evaluation of the vendor (training, support and other commercial aspects) or opensource network of support Identifying and planning internal implementation (including coaching and mentoring for those new to the use of the tool)

The objectives for a pilot project for a new tool o o o o To learn more about the tool To see how the tool would fit with existing processes or documentation To decide on standard ways of using the tool that will work for all potential users To evaluate the pilot project agonist its objectives

Successes factors for the deployment of the new tool within an organization o o o o o o Rolling out the tool to the rest of the organization incrementally Adapting and improving process to fit with the use of the tool Providing training and coaching/mentoring for new users. Defining usage guidelines Implementing a way to learn lessons from tool use. Monitoring tool use and benefits.

Questions:
1) The place to start if you want a (new) test tool is: a) Attend a tool exhibition b) Invite a vendor to give a demo c) Analyse your needs and requirements d) Find out what your budget would be for the tool 2) Given the following types of tool, which tools would typically be used by developers and which by an independent test team: i. static analysis ii. Performance testing iii. Test management iv. Dynamic analysis v. test running vi. test data preparation a) developers would typically use i, iv and vi; test team ii, iii and v b) developers would typically use i and iv; test team ii, iii, v and vi c) developers would typically use i, ii, iii and iv; test team v and vi d) developers would typically use ii, iv and vi; test team I, ii and v e) developers would typically use i, iii, iv and v; test team ii and vi 3) A typical commercial test execution tool would be able to perform all of the following EXCEPT: a) generating expected outputs

56

b) replaying inputs according to a programmed script c) comparison of expected outcomes with actual outcomes d) recording test inputs e) reading test values from a data file 4) Which of the following tools would you use to detect a memory leak? a. State analysis b. Coverage analysis c. Dynamic analysis d. Memory analysis 5) The software engineer's role in tool selection is a) To identify, evaluate, and rank tools, and recommend tools to management b) To determine what kind of tool is needed, then find it and buy it c) To initiate the tool search and present a case to management d) To identify, evaluate and select the tools 6) Which tool store information about versions and builds of software and testware? a. Test Management tool b. Requirements management tool c. Configuration management tool d. Static analysis tool 7) Static analysis tools are typically used by a. Testers b. Developers c. Business analysts d. Customers 8) What type of tools to be used for Regression testing? a. configuration management b. Record/Playback c. test management d. incident management tool 9) Which of the following is an objective of a pilot project for the introduction of a testing tool? a) Evaluate testers competence to use the tool. b) Complete the testing of a key project. c) Assess whether the benefits will be achieved at reasonable cost. d) Discover what the requirements for the tool are. 10) Which of the following tools is most likely to contain a comparator? a) Dynamic Analysis tool. b) Test Execution tool. c) Static Analysis tool. d) Security tool. 11). When a new testing tool is purchased, it should be used first by: a. A small team to establish the best way to use the tool b. Everyone who may eventually have some use for the tool

57

c. The independent testing team d. The vendor contractor to write the initial scripts 12) Which one of the following statements, about capture-replay tools, is NOT correct? a) They are used to support multi-user testing. b) They are used to capture and animate user requirements. c) They are the most frequently purchased types of CAST tool. d) They capture aspects of user behavior. 13) Which tools help to support static testing? a) Static analysis tools and test execution tools b) Review process support tools, static analysis tools and coverage measurement tools c) Dynamic analysis tools and modeling tools d) Review process support tools, static analysis tools and modeling tools 14) Which test activities are supported by test harness or unit test framework tools? a) Test management and control b) Test specification and design c) Test execution and logging d) Performance and monitoring 15) Which of the following are advanced scripting techniques for test execution tools? a) Data-driven and keyword-driven b) Data-driven and capture-driven c) Capture driven and keyhole-driven d) playback-driven and keyword-driven 16) What is a potential risk in using tools to support testing? a) Unrealistic expectations, expecting the tool to do too much b) Insufficient reliance on the tool, i.e. still doing manual testing when a test execution tool has been purchased c) The tool may find defects that arent there. d) The till will repeat exactly the same thing it did the previous thing 17) Which test activities are supported by test data preparation tools? a) Test management and control b) Test specification and design c) Test execution and logging d) Performance and monitoring 18) Which of the following are benefits and which are risks of using tools to support testing? 1 over reliance on the tools 2 greater consistency and repeatability 3 objective assessment 4 unrealistic expectations 5 underestimating the effort require maintaining the test assets generated by the tool 6 ease of access to information about tests or testing 7 repetitive work is reduced a) Benefits: 3, 4, 6 and 7. Risks: 1, 2 and 5

58

b) Benefits: 1, 2, 3 and 7. Risks: 4, 5 and 6 c) Benefits: 2, 3, 6 and 7. Risks: 1, 4 and 5 d) Benefits: 2, 3, 5 and 6. Risks: 1, 4 and 7 19) Which of the following is a goal for a proof-of-concept or pilot phase for tool evaluation? a) Decide tool to acquire b) Decide on the main objectives and requirements for this type of tool c) Evaluate the tool vendor including training, support and commercial aspects d) Decide on standard ways of using, managing, storing and maintaining the tool and the test assets 20) Which success factors are required for good tool support within an organization? a) Acquiring the best tool and ensuring that all testers use it b) Adopting process to fit with the use of the tool and monitoring tool use and benefits c) Setting ambitious objectives for tool benefits and aggressive deadlines for achieving them. d) Adopting practices from other successful organizations and ensuring that initial ways of using the tool are maintained. 21) Which of the following factor is Not important in selecting a tool? a) Cost of the tool b) evaluation of tools against clear requirements and objective criteria c) Assessment of the organizations maturity d) Identifying and planning internal implementation 22) Which of the following are not strictly testing tools? a) Test execution tools b) Configuration management tools c) Unit test framework tools d) Incident management tools 23) Coverage measurement tools are useful to a) Record tests and Automated test execution b) Test components or part of a system by simulating the environment c) Measure the percentage of specific types of code structure d) Check for computer viruses and denial of service attacks 24) Determining differences between files, databases or test results are objectives of a) Security tools b) Test data preparation tools c) Test comparators d) Monitoring tools 25) Which of the following types of tools havent special considerations? a) Static analysis tools b) Performance testing tools c) Test management tools d) Test design tools

59

Model Questions -1
1. Which of the following is true? a. Testing is the same as quality assurance b. Testing is a part of quality assurance c. Testing is not a part of quality assurance d. Testing is same as debugging 2. Why is testing necessary? a. Because testing is good method to make there are not defects in the software b. Because verification and validation are not enough to get to know the quality of the software c. Because testing measures the quality of the software system and helps to increase the quality d. Because testing finds more defects than reviews and inspections. 3. Integration testing has following characteristics I. It can be done in incremental manner II. It is always done after system testing III. It includes functional tests IV. It includes non-functional tests a. I, II and III are correct b. I is correct c. I, III and IV are correct d. I, II and IV are correct 4. A number of critical bugs are fixed in software. All the bugs are in one module, related to reports. The test manager decides to do regression testing only on the reports module. a. The test manager should do only automated regression testing. b. The test manager is justified in her decision because no bug has been fixed in other modules c. The test manager should only do confirmation testing. There is no need to do regression testing d. Regression testing should be done on other modules as well because fixing one module may affect other modules 5. Which of the following is correct about static analysis tools? a. Static analysis tools are used only by developers b. Compilers may offer some support for static analysis c. Static analysis tools help find failures rather than defects d. Static analysis tools require execution of the code to analyze the coverage 6. In a flight reservation system, the number of available seats in each plane model is an input. A plane may have any positive number of available seats, up to the given capacity of the plane. Using Boundary Value analysis, a list of available seat values were generated. Which of the following lists is correct? a. 1, 2, capacity -1, capacity, capacity plus 1 b. 0, 1, capacity, capacity plus 1 c. 0, 1, 2, capacity plus 1, a very large number d. 0, 1, 10, 100, capacity, capacity plus one 7. Which of the following is correct about static analysis tools a. They help you find defects rather than failures

60

b. They are used by developers only c. They require compilation of code d. They are useful only for regulated industries 8. In foundation level syllabus you will find the main basic principles of testing. Which of the following sentences describes one of these basic principles? a. Complete testing of software is attainable if you have enough resources and test tools b. With automated testing you can make statements with more confidence about the quality of a product than with manual testing c. For a software system, it is not possible, under normal conditions, to test all input and preconditions. d. A goal of testing is to show that the software is defect free. 9. Which of the following statements contains a valid goal for a functional test set? a. A goal is that no more failures will result from the remaining defects b. A goal is to find as many failures as possible so that the cause of the failures can be identified and fixed c. A goal is to eliminate as much as possible the causes of defects d. A goal is to fulfill all requirements for testing that are defined in the project plan. 10. In system testing... a. .. Both functional and non-functional requirements are to be tested b. ... Only functional requirements are tested; non-functional requirements are validated in a review c. ... Only non-functional requirements are tested; functional requirements are validated in a review d. ... Only requirements which are listed in the specification document are to be tested 11. Which of the following activities differentiate a walkthrough from a formal review? a. A walkthrough does not follow a defined process b. For a walkthrough individual preparation by the reviewers is optional c. A walkthrough requires meeting d. A walkthrough finds the causes of failures, while formal review finds the failures 12. Why does the boundary value analysis provide good test cases? a. Because it is an industry standard b. Because errors are frequently made during programming of the different cases near the edges of the range of values c. Because only equivalence classes that are equal from a functional point of view are considered in the test cases d. Because the test object is tested under maximal load up to its performance limits 13. Which of the following list contains only non-functional tests? a. Interoperability (compatibility) testing, reliability testing, performance testing b. System testing, performance testing c. Load testing, stress testing, component testing, portability testing d. Testing various configurations, beta testing, load testing 14. The following list contains risks that have been identified for a software product to be developed. Which of these risks is an example of a product risk? a. Not enough qualified testers to complete the planned tests b. Software delivery is behind schedule c. Threat to a patients life

61

d. 3rd party supplier does not supply as stipulated 15. Which set of metrics can be used for monitoring of the test execution? a. Number of detected defects, testing cost; b. Number of residual defects in the test object. c. Percentage of completed tasks in the preparation of test environment; test cases prepared d. Number of test cases run / not run; test cases passed / failed 16. Which of the following statements is correct? a. Static analysis tools produce statistics during program execution b. Configuration management systems allow us to provide accurate defect statistics of different configurations c. Stress testing tools examine the behaviour of the test object at or beyond full load d. Performance measurement tools can be used in all phases of software life-cycle 17. What makes an inspection different from other review types? a. It is led by a trained leader, uses formal entry and exit criteria and checklists b. It is led by the author of the document to be inspected c. It can only be used for reviewing design and code d. It is led by the author, uses checklists, and collects data for improvement 18. Which of the following is a valid collection of equivalence classes for the following problem: An integer field shall contain values from and including 1 to and including 15 a. Less than 1, 1 through 15, more than 15 b. Negative numbers, 1 through 15, above 15 c. Less than 1, 1 through 14, more than 15 d. Less than 0, 1 through 14, 15 and more 19. Which of the following is a valid collection of equivalence classes for the following problem: Paying with credit cards shall be possible with Visa, Master and Amex cards only. a. Visa, Master, Amex; b. Visa, Master, Amex, Diners, Keycards, and other option c. Visa, Master, Amex, any other card, no card d. No card, other cards, any of Visa Master Amex 20. Which of the following techniques are black box techniques? a. State transition testing, code testing, agile testing b. Equivalence partitioning, state transition testing, decision table testing c. System testing, acceptance testing, equivalence partitioning d. System integration testing, system testing, decision table testing 21. A defect management system shall keep track of the status of every defect registered and enforce the rules about changing these states. If your task is to test the status tracking, which method would be best? a. Logic-based testing b. Use-case-based testing c. State transition testing d. Systematic testing according to the V-model 22. This part of a program is given:WHILE (condition A) Do B END WHILE

62

How many decisions should be tested in this code in order to achieve 100% decision coverage? a. 2 b. Indefinite c. 1 d. 4 23. Why can be tester dependent on configuration management? a. Because configuration management assures that we know the exact version of the testware and the test object b. Because test execution is not allowed to proceed without the consent of the change control board c. Because changes in the test object are always subject to configuration management d. Because configuration management assures the right configuration of the test tools 24. What test items should be put under configuration management? a. The test object, the test material and the test environment b. The problem reports and the test material c. Only the test object. The test cases need to be adapted during agile testing d. The test object and the test material 25. Which of the following can be root cause of a bug in a software product? (I) The project had incomplete procedures for configuration management. (II) The time schedule to develop a certain component was cut. (III) the specification was unclear (IV) Use of the code standard was not followed up (V) The testers were not certified a. (I) and (II) are correct b. (I) through (IV) are correct c. (III) through (V) are correct d. (I), (II) and (IV) are correct 26. Which of the following is most often considered as components interface bug? a. For two components exchanging data, one component used metric units, the other one used British units b. The system is difficult to use due to a too complicated terminal input structure c. The messages for user input errors are misleading and not helpful for understanding the input error cause d. Under high load, the system does not provide enough open ports to connect to 27. Which of the following project inputs influence testing? (I) contractual requirements (II) legal requirements (III) Industry standards (IV) application risk (V) project size a. (I) through (III) are correct b. All alternatives are correct c. (II) and (V) are correct d. (I), (III) and (V) are correct 28. What is the purpose of test exit criteria in the test plan? a. To specify when to stop the testing activity b. To set the criteria used in generating test inputs

63

c. To ensure that the test case specification is complete d. To know when a specific test has finished its execution 29. Which of the following items need not to be given in an incident report? a. The version number of the test object b. Test data and used environment c. Identification of the test case that failed d. The instructions on how to correct the fault 30. V-Model is: a. A software development model that illustrates how testing activities integrate with software development phases b. A software life-cycle model that is not relevant for testing c. The official software development and testing life-cycle model of ISTQB d. A testing life cycle model including unit, integration, system and acceptance phases 31. Why is incremental integration preferred over big bang integration? a. Because incremental integration has better early defects screening and isolation ability b. Because big bang integration is suitable only for real time applications c. Incremental integration is preferred over Big Bang Integration only for bottom up development model d. Because incremental integration can compensate for weak and inadequate component testing 32. Maintenance testing is: a. Testing management b. Synonym of testing the quality of service c. Triggered by modifications, migration or retirement of existing software d. Testing the level of maintenance by the vendor 33. Why is it necessary to define a Test Strategy? a. As there are many different ways to test software, thought must be given to decide what will be the most effective way to test the project on hand. b. Starting testing without prior planning leads to chaotic and inefficient test project c. A strategy is needed to inform the project management how the test team will schedule the test-cycles d. Software failure may cause loss of money, time, business reputation, and in extreme cases injury and death. It is therefore critical to have a proper test strategy in place.

Model Questions -2
1 When what is visible to end-users is a deviation from the specific or expected behavior, this is called: a) an error b) a fault c) a failure d) a defect e) a mistake 2 Regression testing should be performed: v) every week w) after the software has changed x) as often as possible

64

y) when the environment has changed z) when the project manager says a) v & w are true, x z are false b) w, x & y are true, v & z are false c) w & y are true, v, x & z are false d) w is true, v, x y and z are false e) all of the above are true 3 IEEE 829 test plan documentation standard contains all of the following except: a) test items b) test deliverables c) test tasks d) test environment e) test specification

4 Testing should be stopped when: a) all the planned tests have been run b) time has run out c) all faults have been fixed correctly d) both a) and c) e) it depends on the risks for the system being tested 5 Order numbers on a stock control system can range between 10000 and 99999 inclusive. Which of the following inputs might be a result of designing tests for only valid equivalence classes and valid boundaries: a) 1000, 5000, 99999 b) 9999, 50000, 100000 c) 10000, 50000, 99999 d) 10000, 99999 e) 9999, 10000, 50000, 99999, 10000 6 Consider the following statements about early test design: i. early test design can prevent fault multiplication ii. faults found during early test design are more expensive to fix iii. early test design can find faults iv. early test design can cause changes to the requirements v. early test design takes more effort a) i, iii & iv are true. Ii & v are false b) iii is true, I, ii, iv & v are false c) iii & iv are true. i, ii & v are false d) i, iii, iv & v are true, ii us false e) i & iii are true, ii, iv & v are false 7 Non-functional system testing includes: a) testing to see where the system does not function properly b) testing quality attributes of the system including performance and usability c) testing a system feature using only the software required for that action d) testing a system feature using only the software required for that function e) testing for functions that should not exist 8 Which of the following is NOT part of configuration management:

65

a) status accounting of configuration items b) auditing conformance to ISO9001 c) identification of test versions d) record of changes to documentation over time e) controlled library access 9 Which of the following is the main purpose of the integration strategy for integration testing in the small? a) to ensure that all of the small modules are tested adequately b) to ensure that the system interfaces to other systems and networks c) to specify which modules to combine when and how many at once d) to ensure that the integration testing can be performed by a small team e) to specify how the software should be divided into modules 10 What is the purpose of test completion criteria in a test plan: a) to know when a specific test has finished its execution b) to ensure that the test case specification is complete c) to set the criteria used in generating test inputs d) to know when test planning is complete e) to plan when to stop testing 11 Consider the following statements i. an incident may be closed without being fixed ii. incidents may not be raised against documentation iii. the final stage of incident tracking is fixing iv. the incident record does not include information on test environments v. incidents should be raised when someone other than the author of the software performs the test a) ii and v are true, I, iii and iv are false b) i and v are true, ii, iii and iv are false c) i, iv and v are true, ii and iii are false d) i and ii are true, iii, iv and v are false e) i is true, ii, iii, iv and v are false

12 Given the following code, which is true about the minimum number of test cases required for full statement and branch coverage: Read P Read Q IF P+Q > 100 THEN Print Large ENDIF If P > 50 THEN Print P Large ENDIF a) 1 test for statement coverage, 3 for branch coverage b) 1 test for statement coverage, 2 for branch coverage c) 1 test for statement coverage, 1 for branch coverage d) 2 tests for statement coverage, 3 for branch coverage e) 2 tests for statement coverage, 2 for branch coverage 13 Given the following: Switch PC on

66

Start outlook IF outlook appears THEN Send an email Close outlook a) 1 test for statement coverage, 1 for branch coverage b) 1 test for statement coverage, 2 for branch coverage c) 1 test for statement coverage. 3 for branch coverage d) 2 tests for statement coverage, 2 for branch coverage e) 2 tests for statement coverage, 3 for branch coverage 14 Given the following code, which is true: IF A > B THEN C=AB ELSE C=A+B ENDIF Read D IF C = D Then Print Error ENDIF a) 1 test for statement coverage, 3 for branch coverage b) 2 tests for statement coverage, 2 for branch coverage c) 2 tests for statement coverage. 3 for branch coverage d) 3 tests for statement coverage, 3 for branch coverage e) 3 tests for statement coverage, 2 for branch coverage 15 Consider the following: Pick up and read the newspaper Look at what is on television If there is a program that you are interested in watching then switch the the television on and watch the program Otherwise Continue reading the newspaper If there is a crossword in the newspaper then try and complete the crossword a) SC = 1 and DC = 1 b) SC = 1 and DC = 2 c) SC = 1 and DC = 3 d) SC = 2 and DC = 2 e) SC = 2 and DC = 3 16 The place to start if you want a (new) test tool is: a) Attend a tool exhibition b) Invite a vendor to give a demo c) Analyse your needs and requirements d) Find out what your budget would be for the tool e) Search the internet 17 When a new testing tool is purchased, it should be used first by: a) A small team to establish the best way to use the tool b) Everyone who may eventually have some use for the tool c) The independent testing team d) The managers to see what projects it should be used in

67

e) The vendor contractor to write the initial scripts 18 What can static analysis NOT find? a) The use of a variable before it has been defined b) Unreachable (dead) code c) Whether the value stored in a variable is correct d) The re-definition of a variable before it has been used e) Array bound violations 19 Which of the following is NOT a black box technique: a) Equivalence partitioning b) State transition testing c) LCSAJ d) Syntax testing e) Boundary value analysis 20 Beta testing is: a) Performed by customers at their own site b) Performed by customers at their software developers site c) Performed by an independent test team d) Useful to test bespoke software e) Performed as early as possible in the lifecycle 21 Given the following types of tool, which tools would typically be used by developers and which by an independent test team: i. static analysis ii. performance testing iii. test management iv. dynamic analysis v. test running vi. test data preparation a) developers would typically use i, iv and vi; test team ii, iii and v b) developers would typically use i and iv; test team ii, iii, v and vi c) developers would typically use i, ii, iii and iv; test team v and vi d) developers would typically use ii, iv and vi; test team I, ii and v e) developers would typically use i, iii, iv and v; test team ii and vi 22 The main focus of acceptance testing is: a) finding faults in the system b) ensuring that the system is acceptable to all users c) testing the system with other systems d) testing for a business perspective e) testing by an independent test team 23 Which of the following statements about the component testing standard is false: a) black box design techniques all have an associated measurement technique b) white box design techniques all have an associated measurement technique c) cyclomatic complexity is not a test measurement technique d) black box measurement techniques all have an associated test design technique e) white box measurement techniques all have an associated test design technique 24 Which of the following statements is NOT true: a) inspection is the most formal review process

68

b) inspections should be led by a trained leader c) managers can perform inspections on management documents d) inspection is appropriate even when there are no written documents e) inspection compares documents with predecessor (source) documents 25 A typical commercial test execution tool would be able to perform all of the following EXCEPT: a) generating expected outputs b) replaying inputs according to a programmed script c) comparison of expected outcomes with actual outcomes d) recording test inputs e) reading test values from a data file 26 The difference between re-testing and regression testing is a) re-testing is running a test again; regression testing looks for unexpected side effects b) re-testing looks for unexpected side effects; regression testing is repeating those tests c) re-testing is done after faults are fixed; regression testing is done earlier d) re-testing uses different environments, regression testing uses the same environment e) re-testing is done by developers, regression testing is done by independent testers 27 Expected results are: a) only important in system testing b) only used in component testing c) never specified in advance d) most useful when specified in advance e) derived from the code 28 Test managers should not: a) report on deviations from the project plan b) sign the system off for release c) re-allocate resource to meet original plans d) raise incidents on faults that they have found e) provide information for risk analysis and quality improvement 29 Unreachable code would best be found using: a) code reviews b) code inspections c) a coverage tool d) a test management tool e) a static analysis tool 30 A tool that supports traceability, recording of incidents or scheduling of tests is called: a) a dynamic analysis tool b) a test execution tool c) a debugging tool d) a test management tool e) a configuration management tool 31 What information need not be included in a test incident report: a) how to fix the fault b) how to reproduce the fault c) test environment details d) severity, priority e) the actual and expected outcomes

69

32 Which expression best matches the following characteristics or review processes: 1. led by author 2. undocumented 3. no management participation 4. led by a trained moderator or leader 5. uses entry exit criteria s) inspection t) peer review u) informal review v) walkthrough a) s = 4, t = 3, u = 2 and 5, v = 1 b) s = 4 and 5, t = 3, u = 2, v = 1 c) s = 1 and 5, t = 3, u = 2, v = 4 d) s = 5, t = 4, u = 3, v = 1 and 2 e) s = 4 and 5, t = 1, u = 2, v = 3 33 Which of the following is NOT part of system testing: a) business process-based testing b) performance, load and stress testing c) requirements-based testing d) usability testing e) top-down integration testing 34 What statement about expected outcomes is FALSE: a) expected outcomes are defined by the softwares behaviour b) expected outcomes are derived from a specification, not from the code c) expected outcomes include outputs to a screen and changes to files and databases d) expected outcomes should be predicted before a test is run e) expected outcomes may include timing constraints such as response times 35 The standard that gives definitions of testing terms is: a) ISO/IEC 12207 b) BS7925-1 c) BS7925-2 d) ANSI/IEEE 829 e) ANSI/IEEE 729 36 The cost of fixing a fault: a) Is not important b) Increases as we move the product towards live use c) Decreases as we move the product towards live use d) Is more expensive if found in requirements than functional design e) Can never be determined 37 Which of the following is NOT included in the Test Plan document of the Test Documentation Standard: a) Test items (i.e. software versions) b) What is not to be tested c) Test environments d) Quality plans e) Schedules and deadlines

70

38 Could reviews or inspections be considered part of testing: a) No, because they apply to development documentation b) No, because they are normally applied before testing c) No, because they do not apply to the test documentation d) Yes, because both help detect faults and improve quality e) Yes, because testing includes all non-constructive activities 39 Which of the following is not part of performance testing: a) Measuring response time b) Measuring transaction rates c) Recovery testing d) Simulating many users e) Generating many transactions 40 Error guessing is best used a) As the first approach to deriving test cases b) After more formal techniques have been applied c) By inexperienced testers d) After the system has gone live e) Only by end users

Model Questions -3
1. An input field takes the year of birth between 1900 and 2004 The boundary values for testing this field are a. 0,1900,2004,2005 b. 1900, 2004 c. 1899,1900,2004,2005 d. 1899, 1900, 1901,2003,2004,2005 2. Which one of the following are non-functional testing methods? a. System testing b. Usability testing c. Performance testing d. Both b & c 3. Which of the following tools would be involved in the automation of regression test? a. Data tester b. Boundary tester c. Capture/Playback d. Output comparator. 4. Incorrect form of Logic coverage is: a. Statement Coverage b. Pole Coverage c. Condition Coverage d. Path Coverage 5. Which of the following is not a quality characteristic listed in ISO 9126 Standard? a. Functionality

71

b. Usability c. Supportability d. Maintainability 6. To test a function, the programmer has to write a _________, which calls the function to be tested and passes it test data. a. Stub b. Driver c. Proxy d. None of the above 7. Boundary value testing a. Is the same as equivalence partitioning tests b. Test boundary conditions on, below and above the edges of input and output equivalence classes c. Tests combinations of input circumstances d. Is used in white box testing strategy 8. Pick the best definition of quality a. Quality is job one b. Zero defects c. Conformance to requirements d. Work as designed 9. Fault Masking is a. Error condition hiding another error condition b. Creating a test case which does not reveal a fault c. Masking a fault by developer d. Masking a fault by a tester 10. One Key reason why developers have difficulty testing their own work is: a. Lack of technical documentation b. Lack of test tools on the market for developers c. Lack of training d. Lack of Objectivity 11. During the software development process, at what point can the test process start? a. When the code is complete. b. When the design is complete. c. When the software requirements have been approved. d. When the first code module is ready for unit testing 12. In a review meeting a moderator is a person who a. Takes minutes of the meeting b. Mediates between people c. Takes telephone calls d. Writes the documents to be reviewed 13. Acceptance test cases are based on what? a. Requirement b. Design c. Code d. Decision table 14. How much testing is enough?

72

a. This question is impossible to answer b. This question is easy to answer c. The answer depends on the risk for your industry, contract and special requirements d. This answer depends on the maturity of your developers 15. A common test technique during component test is a. Statement and branch testing b. Usability testing c. Security testing d. Performance testing 16. Independent Verification & Validation is a. Done by the Developer b. Done by the Test Engineers c. Done By Management d. Done by an Entity Outside the Projects sphere of influence 17. Code Coverage is used as a measure of what ? a. Defects b. Trends analysis c. Test Effectiveness d. Time Spent Testing

Model Questions -4
1 We split testing into distinct stages primarily because: a) Each test stage has a different purpose. b) It is easier to manage testing in stages. c) We can run different tests in different environments. d) The more stages we have, the better the testing. 2 Which of the following is likely to benefit most from the use of test tools providing test capture and replay facilities? a) Regression testing b) Integration testing c) System testing d) User acceptance testing 3 Which of the following statements is NOT correct? a) A minimal test set that achieves 100% LCSAJ coverage will also achieve 100% branch coverage. b) A minimal test set that achieves 100% path coverage will also achieve 100% statement coverage. c) A minimal test set that achieves 100% path coverage will generally detect more faults than one that achieves 100% statement coverage. d) A minimal test set that achieves 100% statement coverage will generally detect more faults than one that achieves 100% branch coverage. 4 Which of the following requirements is testable? a) The system shall be user friendly. b) The safety-critical parts of the system shall contain 0 faults. c) The response time shall be less than one second for the specified design load. d) The system shall be built to be portable.

73

5 Analyse the following highly simplified procedure: Ask: What type of ticket do you require, single or return? IF the customer wants return Ask: What rate, Standard or Cheap-day? IF the customer replies Cheap-day Say: That will be 11:20 ELSE Say: That will be 19:50 ENDIF ELSE Say: That will be 9:75 ENDIF Now decide the minimum number of tests that are needed to ensure that all the questions have been asked, all combinations have occurred and all replies given. a) 3 b) 4 c) 5 d) 6 6 Error guessing: a) supplements formal test design techniques. b) can only be used in component, integration and system testing. c) is only performed in user acceptance testing. d) is not repeatable and should not be used. 7 Which of the following is NOT true of test coverage criteria? a) Test coverage criteria can be measured in terms of items exercised by a test suite. b) A measure of test coverage criteria is the percentage of user requirements covered. c) A measure of test coverage criteria is the percentage of faults found. d) Test coverage criteria are often used when specifying test completion criteria. 8 In prioritising what to test, the most important objective is to: a) find as many faults as possible. b) test high risk areas. c) obtain good test coverage. d) test whatever is easiest to test. 9 Given the following sets of test management terms (v-z), and activity descriptions (1-5), which one of the following best pairs the two sets? v test control w test monitoring x - test estimation y - incident management z - configuration control 1 2 3 4 5 calculation of required test resources maintenance of record of test results re-allocation of resources when tests overrun report on deviation from test plan tracking of anomalous test results

a) v-3,w-2,x-1,y-5,z-4 b) v-2,w-5,x-1,y-4,z-3 c) v-3,w-4,x-1,y-5,z-2

74

d) v-2,w-1,x-4,y-3,z-5 10 Which one of the following statements about system testing is NOT true? a) System tests are often performed by independent teams. b) Functional testing is used more than structural testing. c) Faults found during system tests can be very expensive to fix. d) End-users should be involved in system tests. 11 Which of the following is false? a) Incidents should always be fixed. b) An incident occurs when expected and actual results differ. c) Incidents can be analysed to assist in test process improvement. d) An incident can be raised against documentation. 12 Enough testing has been performed when: a) time runs out. b) the required level of confidence has been achieved. c) no more faults are found. d) the users wont find any serious faults. 13 Which of the following is NOT true of incidents? a) Incident resolution is the responsibility of the author of the software under test. b) Incidents may be raised against user requirements. c) Incidents require investigation and/or correction. d) Incidents are raised when expected and actual results differ. 14 Which of the following is not described in a unit test standard? a) syntax testing b) equivalence partitioning c) stress testing d) modified condition/decision coverage 15 Which of the following is false? a) In a system two different failures may have different severities. b) A system is necessarily more reliable after debugging for the removal of a fault. c) A fault need not affect the reliability of a system. d) Undetected errors may lead to faults and eventually to incorrect behaviour. 16 Which one of the following statements, about capture-replay tools, is NOT correct? a) They are used to support multi-user testing. b) They are used to capture and animate user requirements. c) They are the most frequently purchased types of CAST tool. d) They capture aspects of user behaviour. 17 How would you estimate the amount of re-testing likely to be required? a) Metrics from previous similar projects b) Discussions with the development team c) Time allocated for regression testing d) a & b 18 Which of the following is true of the V-model? a) It states that modules are tested against user requirements. b) It only models the testing phase. c) It specifies the test techniques to be used.

75

d) It includes the verification of designs. 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. 20 Which of the following characterises the cost of faults? a) They are cheapest to find in the early development phases and the most expensive to fix in the latest test phases. b) They are easiest to find during system testing but the most expensive to fix then. c) Faults are cheapest to find in the early development phases but the most expensive to fix then. d) Although faults are most expensive to find during early development phases, they are cheapest to fix then. 21 Which of the following should NOT normally be an objective for a test? a) To find faults in the software. b) To assess whether the software is ready for release. c) To demonstrate that the software doesnt work. d) To prove that the software is correct. 22 Which of the following is a form of functional testing? a) Boundary value analysis b) Usability testing c) Performance testing d) Security testing 23 Which of the following would NOT normally form part of a test plan? a) Features to be tested b) Incident reports c) Risks d) Schedule 24 Which of these activities provides the biggest potential cost saving from the use of CAST? a) Test management b) Test design c) Test execution d) Test planning 25 Which of the following is NOT a white box technique? a) Statement testing b) Path testing c) Data flow testing d) State transition testing 26 Data flow analysis studies: a) possible communications bottlenecks in a program. b) the rate of change of data values as a program executes. c) the use of data on paths through the code. d) the intrinsic complexity of the code. 27 In a system designed to work out the tax to be paid:

76

An employee has 4000 of salary tax free. The next 1500 is taxed at 10% The next 28000 is taxed at 22% Any further amount is taxed at 40% To the nearest whole pound, which of these is a valid Boundary Value Analysis test case? a) 1500 b) 32001 c) 33501 d) 28000 28 An important benefit of code inspections is that they: a) enable the code to be tested before the execution environment is ready. b) can be performed by the person who wrote the code. c) can be performed by inexperienced staff. d) are cheap to perform. 29 Which of the following is the best source of Expected Outcomes for User Acceptance Test scripts? a) Actual results b) Program specification c) User requirements d) System specification

30 What is the main difference between a walkthrough and an inspection? a) An inspection is lead by the author, whilst a walkthrough is lead by a trained moderator. b) An inspection has a trained leader, whilst a walkthrough has no leader. c) Authors are not present during inspections, whilst they are during walkthroughs. d) A walkthrough is lead by the author, whilst an inspection is lead by a trained moderator. 31 Which one of the following describes the major benefit of verification early in the life cycle? a) It allows the identification of changes in user requirements. b) It facilitates timely set up of the test environment. c) It reduces defect multiplication. d) It allows testers to become involved early in the project. 32 Integration testing in the small: a) tests the individual components that have been developed. b) tests interactions between modules or subsystems. c) only uses components that form part of the live system. d) tests interfaces to other systems. 33 Static analysis is best described as: a) the analysis of batch programs. b) the reviewing of test plans. c) the analysis of program code. d) the use of black box testing. 34 Alpha testing is: a) post-release testing by end user representatives at the developers site. b) the first testing that is performed. c) pre-release testing by end user representatives at the developers site. d) pre-release testing by end user representatives at their sites.

77

35 A failure is: a) found in the software; the result of an error. b) departure from specified behaviour. c) an incorrect step, process or data definition in a computer program. d) a human action that produces an incorrect result. 36 In a system designed to work out the tax to be paid: An employee has 4000 of salary tax free. The next 1500 is taxed at 10% The next 28000 is taxed at 22% Any further amount is taxed at 40% Which of these groups of numbers would fall into the same equivalence class? a) 4800; 14000; 28000 b) 5200; 5500; 28000 c) 28001; 32000; 35000 d) 5800; 28000; 32000 37 The most important thing about early test design is that it: a) makes test preparation easier. b) means inspections are not required. c) can prevent fault multiplication. d) will find all faults. 38 Which of the following statements about reviews is true? a) Reviews cannot be performed on user requirements specifications. b) Reviews are the least effective way of testing code. c) Reviews are unlikely to find faults in test plans. d) Reviews should be performed on specifications, code, and test plans. 39 Test cases are designed during: a) test recording. b) test planning. c) test configuration. d) test specification. 40 A configuration management system would NOT normally provide: a) linkage of customer requirements to version numbers. b) facilities to compare test results with expected results. c) the precise differences in versions of software component source code. d) restricted access to the source code library.

Model Questions -5
1. Software testing activities should start a. as soon as the code is written b. during the design stage c. when the requirements have been formally documented d. as soon as possible in the development life cycle 2.Faults found by users are due to: a. Poor quality software b. Poor software and poor testing c. bad luck

78

d. insufficient time for testing 3.What is the main reason for testing software before releasing it? a. to show that system will work after release b. to decide when the software is of sufficient quality to release c. to find as many bugs as possible before release d. to give information for a risk based decision about release 4. which of the following statements is not true a. performance testing can be done during unit testing as well as during the testing of whole system b. The acceptance test does not necessarily include a regression test c. Verification activities should not involve testers (reviews, inspections etc) d. Test environments should be as similar to production environments as possible 5. When reporting faults found to developers, testers should be: a. as polite, constructive and helpful as possible b. firm about insisting that a bug is not a feature if it should be fixed c. diplomatic, sensitive to the way they may react to criticism d. All of the above 6.In which order should tests be run? a. the most important tests first b. the most difficult tests first(to allow maximum time for fixing) c. the easiest tests first(to give initial confidence) d. the order they are thought of 7. The later in the development life cycle a fault is discovered, the more expensive it is to fix. why? a. the documentation is poor, so it takes longer to find out what the software is doing. b. wages are rising c. the fault has been built into more documentation, code, tests, etc d. none of the above 8. Which is not true-The black box tester a. should be able to understand a functional specification or requirements document b. should be able to understand the source code. c. is highly motivated to find faults d. is creative to find the systems weaknesses 9. A test design technique is a. a process for selecting test cases b. a process for determining expected outputs c. a way to measure the quality of software d. a way to measure in a test plan what has to be done 10. Testware (test cases, test dataset) a. needs configuration management just like requirements, design and code b. should be newly constructed for each new version of the software c. is needed only until the software is released into production or use d. does not need to be documented and commented, as it does not form part of the released software system 11. An incident logging system a only records defects

79

b is of limited value c is a valuable source of project information during testing if it contains all incidents d. should be used only by the test team. 12. Increasing the quality of the software, by better development methods, will affect the time needed for testing (the test phases) by: a. reducing test time b. no change c. increasing test time d. cant say 13. Coverage measurement a. is nothing to do with testing b. is a partial measure of test thoroughness c. branch coverage should be mandatory for all software d. can only be applied at unit or module testing, not at system testing 14. When should you stop testing? a. when time for testing has run out. b. when all planned tests have been run c. when the test completion criteria have been met d. when no faults have been found by the tests run 15. Which of the following is true? a. Component testing should be black box, system testing should be white box. b. if u find a lot of bugs in testing, you should not be very confident about the quality of software c. the fewer bugs you find, the better your testing was d. the more tests you run, the more bugs you will find. 16. What is the important criterion in deciding what testing technique to use? a. how well you know a particular technique b. the objective of the test c. how appropriate the technique is for testing the application d. whether there is a tool to support the technique 17. If the pseudocode below were a programming language ,how many tests are required to achieve 100% statement coverage? 1. 2. 3. 4. 5. 6. 7. 8. If x=3 then Display_messageX; If y=2 then Display_messageY; Else Display_messageZ; Else Display_messageZ;

a. 1 b. 2 c. 3 d. 4 18. Using the same code example as question 17,how many tests are required to achieve 100% branch/decision coverage?

80

a. 1 b. 2 c. 3 d. 4 19 Which of the following is NOT a type of non-functional test? a. State-Transition b. Usability c. Performance d. Security 20. Which of the following tools would you use to detect a memory leak? a. State analysis b. Coverage analysis c. Dynamic analysis d. Memory analysis 21. Which of the following is NOT a standard related to testing? a. IEEE829 b. IEEE610 c. BS7925-1 d. BS7925-2 22.which of the following is the component test standard? a. IEEE 829 b. IEEE 610 c. BS7925-1 d. BS7925-2 23 which of the following statements are true? a. Faults in program specifications are the most expensive to fix. b. Faults in code are the most expensive to fix. c. Faults in requirements are the most expensive to fix d. Faults in designs are the most expensive to fix. 24. Which of the following is not the integration strategy? a. Design based b. Big-bang c. Bottom-up d. Top-down

25. Which of the following is a black box design technique? a. statement testing b. equivalence partitioning c. error- guessing d. usability testing 26. A program with high cyclometic complexity is almost likely to be: a. Large b. Small c. Difficult to write d. Difficult to test 27. Which of the following is a static test?

81

a. code inspection b. coverage analysis c. usability assessment d. installation test 28. Which of the following is the odd one out? a. white box b. glass box c. structural d. functional 29. A program validates a numeric field as follows: values less than 10 are rejected, values between 10 and 21 are accepted, values greater than or equal to 22 are rejected which of the following input values cover all of the equivalence partitions? a. 10,11,21 b. 3,20,21 c. 3,10,22 d. 10,21,22 30. Using the same specifications as question 29, which of the following covers the MOST boundary values? a. 9,10,11,22 b. 9,10,21,22 c. 10,11,21,22 d. 10,11,20,21

1. COTS is known as A. Commercial off the shelf software B. Compliance of the software C. Change control of the software D. Capable off the shelf software

Model Questions -6

2. From the below given choices, which one is the Confidence testing A. Performance Testing B. System testing C. Smoke testing D. Regression testing 3. Defect Density calculated in terms of A. The number of defects identified in a component or system divided by the size of the component or the system B. The number of defects found by a test phase divided by the number found by that test phase and any other means after wards C. The number of defects identified in the component or system divided by the number of defects found by a test phase D. The number of defects found by a test phase divided by the number found by the size of the system 4. Be bugging is known as

82

A. Preventing the defects by inspection B. Fixing the defects by debugging C. Adding known defects by seeding D. A process of fixing the defects by tester 5. An expert based test estimation is also known as A. Narrow band Delphi B. Wide band Delphi C. Bespoke Delphi D. Robust Delphi 6. When testing a grade calculation system, a tester determines that all scores from 90 to 100 will yield a grade of A, but scores below 90 will not. This analysis is known as: A. Equivalence partitioning B. Boundary value analysis C. Decision table D. Hybrid analysis 7. All of the following might be done during unit testing except A. Desk check B. Manual support testing C. Walkthrough D. Compiler based testing

8. Which of the following characteristics is primarily associated with software reusability? A. The extent to which the software can be used in other applications B. The extent to which the software can be used by many different users C. The capability of the software to be moved to a different platform D. The capability of one system to be coupled with another system 9. Which of the following software change management activities is most vital to assessing the impact of proposed software modifications? A. Baseline identification B. Configuration auditing C. Change control D. Version control 10. Which of the following statements is true about a software verification and validation program? I. It strives to ensure that quality is built into software. II. It provides management with insights into the state of a software project. III. It ensures that alpha, beta, and system tests are performed. IV. It is executed in parallel with software development activities. A. I, II&III B.II, III&IV C.I, II&IV

83

D.I, III&IV 11. Which of the following is a requirement of an effective software environment? I. Ease of use II. Capacity for incremental implementation III. Capability of evolving with the needs of a project IV. Inclusion of advanced tools A.I, II &III B.I, II &IV C.II, III&IV D.I, III&IV 12. A project manager has been transferred to a major software development project that is in the implementation phase. The highest priority for this project manager should be to A. Establish a relationship with the customer B. Learn the project objectives and the existing project plan C. Modify the project s organizational structure to meet the manager s management style D. Ensure that the project proceeds at its current pace 13. Which of the following functions is typically supported by a software quality information system? I. Record keeping II. System design III. Evaluation scheduling IV. Error reporting A.I, II&III B.II, III &IV C.I, III &IV D.I, II & IV 14. During the testing of a module tester X finds a bug and assigned it to developer. But developer rejects the same, saying that its not a bug. What X should do? A. Report the issue to the test manager and try to settle with the developer. B. Retest the module and confirm the bug C. Assign the same bug to another developer D. Send to the detailed information of the bug encountered and check the reproducibility 15. The primary goal of comparing a user manual with the actual behavior of the running program during system testing is to A. Find bugs in the program B. Check the technical accuracy of the document C. Ensure the ease of use of the document D. Ensure that the program is the latest version

16. A type of integration testing in which software elements, hardware elements,

84

or both are combined all at once into a component or an overall system, rather than in stages. A. System Testing B. Big-Bang Testing C. Integration Testing D. Unit Testing 17. Which technique can be used to achieve input and output coverage? It can be applied to human input, input via interfaces to a system, or interface parameters in integration testing. A. Error Guessing B. Boundary Value Analysis C. Decision Table testing D. Equivalence partitioning 18. There is one application, which runs on a single terminal. There is another application that works on multiple terminals. What are the test techniques you will use on the second application that you would not do on the first application? A. Integrity, Response time B. Concurrency test, Scalability C. Update & Rollback, Response time D. Concurrency test, Integrity 19. You are the test manager and you are about the start the system testing. The developer team says that due to change in requirements they will be able to deliver the system to you for testing 5 working days after the due date. You can not change the resources(work hours, test tools, etc.) What steps you will take to be able to finish the testing in time. ( A. Tell to the development team to deliver the system in time so that testing activity will be finish in time. B. Extend the testing plan, so that you can accommodate the slip going to occur C. Rank the functionality as per risk and concentrate more on critical functionality testing D. Add more resources so that the slippage should be avoided 20. Item transmittal report is also known as A. Incident report B. Release note C. Review report D. Audit report 21. Testing of software used to convert data from existing systems for use in replacement systems A. Data driven testing B. Migration testing C. Configuration testing D. Back to back testing 22. Big bang approach is related to A. Regression testing B. Inter system testing C. Re-testing D. Integration testing

85

23. The tracing of requirements for a test level through the layers of a test documentation done by A. Horizontal traceability B. Depth traceability C. Vertical traceability D. Horizontal & Vertical traceability 24. A test harness is a A. A high level document describing the principles, approach and major objectives of the organization regarding testing B. A distance set of test activities collected into a manageable phase of a project C. A test environment comprised of stubs and drives needed to conduct a test D. A set of several test cases for a component or system under test 25. Entry criteria should address questions such as I. Are the necessary documentation, design and requirements information available that will allow testers to operate the system and judge correct behavior. II. Is the test environment-lab, hardware, software and system administration support ready? III. Those conditions and situations that must prevail in the testing process to allow testing to continue effectively and efficiently. IV. Are the supporting utilities, accessories and prerequisites available in forms that testers can use A. I, II and IV B. I, II and III C. I, II, III and IV D. II, III and IV. 26. This life cycle model is basically driven by schedule and budget risks This statement is best suited for A. Water fall model B. Spiral model C. Incremental model D. V-Model

Model Questions -7
1. ___________ Testing will be performed by the people at client own locations A. Alpha testing B. Field testing C. Performance testing D. System testing 2. System testing should investigate A. Non-functional requirements only not Functional requirements B. Functional requirements only not non-functional requirements C. Non-functional requirements and Functional requirements D. Non-functional requirements or Functional requirements 3. Which is the non-functional testing

86

A. Performance testing B. Unit testing C. Regression testing D. Sanity testing 4. Who is responsible for document all the issues, problems and open point that were identified during the review meeting A. Moderator B. Scribe C. Reviewers D. Author 5. What is the main purpose of Informal review A. Inexpensive way to get some benefit B. Find defects C. Learning, gaining understanding, effect finding D. Discuss, make decisions and solve technical problems 6. Purpose of test design technique is A. Identifying test conditions only, not Identifying test cases B. Not Identifying test conditions, Identifying test cases only C. Identifying test conditions and Identifying test cases D. Identifying test conditions or Identifying test cases 7. ___________ technique can be used to achieve input and output coverage A. Boundary value analysis B. Equivalence partitioning C. Decision table testing D. State transition testing 8. Use cases can be performed to test A. Performance testing B. Unit testing C. Business scenarios D. Static testing 9. ________________ testing is performed at the developing organizations site A. Unit testing B. Regression testing C. Alpha testing D. Integration testing 10. Which is not the project risk? A. Supplier issues B. Organization factors C. Technical issues D. Error-prone software delivered

87

11. Poor software characteristics are A. Only Project risks B. Only Product risks C. Project risks and Product risks D. Project risks or Product risks 12. ________ and ________ are used within individual workbenches to produce the right output products. A. Tools and techniques B. Procedures and standards C. Processes and walkthroughs D. Reviews and update 13. The software engineer's role in tool selection is A. To identify, evaluate, and rank tools, and recommend tools to management B. To determine what kind of tool is needed, then find it and buy it C. To initiate the tool search and present a case to management D. To identify, evaluate and select the tools 14. A _____ is the step-by-step method followed to ensure that standards are met A. SDLC B. Project Plan C. Policy D. Procedure 15. Which of the following is the standard for the Software product quality? A. ISO 9126 B. ISO 829 C. ISO 1012 D. ISO 1028 16. Which is not the testing objective? A. Finding defects B. Gaining confidence about the level of quality and providing information C. Preventing defects. D. Debugging defects 17. Bug life cycle A. Open, Assigned, Fixed, Closed B. Open, Fixed, Assigned, Closed C. Assigned, Open, Closed, Fixed D. Assigned, Open, Fixed, Closed 18. Which is not the software characteristic? A. Reliability B. Usability C. Scalability

88

D. Maintainability 19. Which is not a testing principle? A. Error Seeding B. Defect clustering C. Pesticide paradox D. Exhaustive testing 20. X has given a data on a person age, which should be between 1 and 99. Using BVA which is the appropriate one A. 0, 1,2,99 B. 1, 99, 100, 98 C. 0, 1, 99, 100 D. 1, 0, 1, 99 21. Which is not the fundamental test process? A. Planning and control B. Test closure activities C. Analysis and design D. None 22. Which is not a Component testing A. Check the memory leaks B. Check the robustness C. Check the branch coverage D. Check the decision tables 23. PDCA is known as A. Plan, Do, Check, Act B. Plan, Do, Correct, Act C. Plan, Debug, Check, Act D. Plan, Do, Check, Accept 24. Contract and regulation testing is a part of A. System testing B. Acceptance testing C. Integration testing D. Smoke testing 25. Which is not a black box testing technique? A. Equivalence partition B. Decision tables C. Transaction diagrams D. Decision testing 26. Arc testing is known as A. Branch testing

89

B. Agile testing C. Beta testing D. Ad-hoc testing 27. The principle of Cyclomatic complexity, considering L as edges or links, N as nodes, P as independent paths A. L-N +2P B. N-L +2P C. N-L +P D. N-L +P 28. Which is not a test Oracle A. The existing system (For a bench mark) B. The code C. Individuals knowledge D. User manual

Model Test -1
1) Designing the test environment set-up and identifying any required infrastructure and tools are a part of which phase a) Test Implementation and execution b) Test Analysis and Design c) Evaluating the Exit Criteria and reporting d) Test Closure Activities 2) Test Implementation and execution has which of the following major tasks? i. Developing and prioritizing test cases, creating test data, writing test procedures and optionally preparing the test harnesses and writing automated test scripts. ii. Creating the test suite from the test cases for efficient test execution. iii. Verifying that the test environment has been set up correctly. iv. Determining the exit criteria. a) i, ii, iii are true and iv is false b) i, iii, iv are true and ii is false c) i, ii are true and iii, iv are false d) ii, iii, iv are true and i is false 3) Which of the following statements is Most Often true? a) Source-code inspections are often used in component testing. b) Component testing searches for defects in programs that are separately testable. c) Component testing is an important part of user acceptance testing. d) Component testing aims to expose problems in the interactions between software and hardware components. 4) One of the fields on a form contains a text box which accepts numeric values in the range of 18 to 25. Identify the invalid Equivalence class a) 17 b) 19 c) 24 d) 21

90

5) In an Examination a candidate has to score minimum of 24 marks in order to clear the exam. The maximum that he can score is 40 marks. Identify the Valid Equivalence values if the student clears the exam. a) 22, 23, 26 b) 21, 39, 40 c) 29, 30, 31 d) 0, 15, 22 6) Which of the following statements regarding static testing is false? a) Static testing requires the running of tests through the code b) Static testing includes desk checking c) Static testing includes techniques such as reviews and inspections d) Static testing can give measurements such as cyclomatic complexity 7) Which of the following is an objective of a pilot project for the introduction of a testing tool? a) Evaluate testers competence to use the tool. b) Complete the testing of a key project. c) Assess whether the benefits will be achieved at reasonable cost. d) Discover what the requirements for the tool are. 8) Component Testing is also called as: i. Unit Testing ii. Program Testing iii. Module Testing iv. System Component Testing . a) i, ii, iii are true and iv is false b) i, ii, iii, iv are false c) i, ii, iv are true and iii is false d) All of above is true 9) What is the MAIN purpose of a Master Test Plan? a) To communicate how incidents will be managed. b) To communicate how testing will be performed. c) To produce a test schedule. d) To produce a work breakdown structure.

10) What is the expected result for each of the following test cases? Rule 1 Rule 2 Conditions Indian resident? False True Age between 18 and Dont care False 55? Married? Dont care Dont care Actions Rule 3 True True False Rule 4 True True True

91

Issue Membership? Offer 10% discount?

False False

False False

True True

True False

A.TC1: Anand is a 32 year old married, residing in Kolkatta. B.TC3: Attapattu is a 65 year old married person, residing in Colombo. a. A Issue membership, 10% discount, B Issue membership, offer no discount. B b. A Dont Issue membership, B Dont offer discount. C c. A Issue membership, no discount, B Dont Issue membership. d. Issue membership, no discount, B- Issue membership with 10% discount. 11) Failure is --a. Incorrect program behavior due to a mistake in the program b. Bug found before product Release c. Bug found after product Release d. Bug found during Design phase 12) Which tool store information about versions and builds of software and testware a. Test Management tool b. Requirements management tool c. Configuration management tool d. Static analysis tool 13. Given the Following program IF X < Y THEN Statement 1; ELSE IF Y >= Z THEN Statement 2; END McCabes Cyclomatic Complexity is: a) 2 b) 3 c) 4 d) 5 14) Code Coverage is used as a measure of what? a) Defects b) Trends analysis c) Test Effectiveness d) Time Spent Testing 15) Given the following types of tool, which tools would typically be used by developers, and which by an independent system test team? i. Static analysis ii. Performance testing iii. Test management iv. Dynamic analysis a) developers would typically use i and iv; test team ii and iii b) developers would typically use i and iii; test team ii and iv c) developers would typically use ii and iv; test team i and iii d) developers would typically use i, iii and iv; test team ii 16) The standard that gives definitions of testing terms is:

92

a) ISO/IEC 12207 b) BS 7925-1 c) ANSI/IEEE 829 d) ANSI/IEEE 729 17) If the pseudo code below were a programming language, how many tests are required to achieve 100% statement coverage? 1. If x=3 then 2. Display_messageX; 3. If y=2 then 4. Display_messageY; 5. Else 6. Display_messageZ a. 1 b. 2 c. 3 d. 4 18) 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. 19) Which of these activities provides the biggest potential cost saving from the use of CAST? a) Test management b) Test design c) Test execution d) Test planning 20) Which of the following techniques is NOT a White box technique? a) Statement Testing and coverage b) Condition Coverage c) Random Testing d) Decision Testing and coverage 21).which of the following is the component test standard? a. IEEE 829 b. IEEE 610 c. BS7925-1 d. BS7925-2 22) In a risk-based approach the risks identified may be used to : i. Determine the test technique to be employed ii. Determine the extent of testing to be carried out iii. Prioritize testing in an attempt to find critical defects as early as possible. iv. Determine the cost of the project a) ii is True; i, iii, iv & v are False b) i, ii, iii are true and iv is false c) ii & iii are True; i, iv are False d) ii, iii & iv are True; i is false 23) Which of the following is the task of a Tester? i. Interaction with the Test Tool Vendor to identify best ways to leverage test tool on the project. ii. Prepare and acquire Test Data

93

iii. Implement Tests on all test levels, execute and log the tests. iv. Create the Test Specifications a) i, ii, iii is true and iv is false b) ii, iii, iv is true and i is false c) i is true and ii, iii, iv are false d) iii and iv is correct and i and ii are incorrect 24) The Planning phase of a formal review includes the following:a) Explaining the objectives b) Selecting the personnel, allocating roles. c) Follow up d) Individual Meeting preparations 25) A Person who documents all the issues, problems and open points that were identified during a formal review. a) Moderator. b) Scribe c) Author d) Manager 26) Who are the persons involved in a Formal Review:i. Manager ii. Moderator iii. Scribe / Recorder iv. Assistant Manager a) i, ii, iii, iv are true b) i, ii, iii are true and iv is false. c) ii, iii, iv are true and i is false. d) i, iv are true and ii, iii are false. 27) Is the activity where general testing objectives are transformed into tangible test conditions and test designs a. Testing planning b. Test Control c. Test analysis and design d. Test implementation and execution 28) What can static analysis NOT find? a) The use of a variable before it has been defined b) Unreachable (dead) code c) Memory leaks d) Array bound violations 29) Which one is not the task of test leader? a) Review and contribute to test plans b) Coordinate the test strategy and plan with project managers and others c) Decide about the implementation of the test environment d) Write test summary reports 30) A type of Testing, which investigates the functions relating to detection of threats, such as virus from malicious outsiders. a) Security Testing b) Recovery Testing c) Performance Testing d) Functionality Testing 31) Which of the following would be a valid measure of test progress? a) Number of undetected defects. b) Total number of defects in the product. c) Number of test cases not yet executed.

94

d) Effort required to fix all defects. 32) which tool facilitate the testing of components or part of a system by simulation the environment in which the test object will run a) Test Design tool b) Modeling tool c) Test harness tool d) test execution 33) For testing, which of the options below best represents the main concerns of Configuration Management? i. All items of testware are identified and version controlled; ii. All items of testware are used in the final acceptance test; iii. All items of testware are stored in a common repository; iv. All items of testware are tracked for change; v. All items of testware are assigned to a responsible owner; vi. All items of testware are related to each other and to development items. a) b) c) D i, iv, vi. ii, iii, v. i, iii, iv. iv, v, vi.

34) Which of the following is a characteristic of good testing in any life cycle model? a) All document reviews involve the development team. b) Some, but not all, development activities have corresponding test activities. c) Each test level has test objectives specific to that level. d) Analysis and design of tests begins as soon as development is complete. 35) One of the fields on a form contains a text box which accepts alpha numeric values. Identify the Valid Equivalence class a) BOOK b) Book c) Boo01k d) book 36) Reviewing the test Basis is a part of which phase a) Test Implementation and execution b) Test Closure Activities c) Evaluating exit criteria and reporting d) Test Analysis and Design 37) From given the following State Table: A S1 B S2 S3 ES S1 S3 C D E F

SS S1 S2 S3 ES

Which of the following represents an INVALID state transition? a) E from State S2. b) E from State S3.

95

c) B from State S1. d) F from State S3. 38) Which of the following items would not come under Configuration Management? a) Operating systems b) Test documentation c) Live data d) User requirement document 39) What is the main purpose of impact analysis for testers? a) To determine the programming effort needed to make the changes. b) To determine what proportion of the changes need to be tested. c) To determine how much the planned changes will affect users. d) To determine how the existing system may be affected by changes. 40) Considering the following pseudo-code, calculate the MINIMUM number of test cases for statement coverage, and the MINIMUM number of test cases for decision coverage respectively. READ A READ B READ C IF C>A THEN IF C>B THEN PRINT "C must be greater than at least one number" ELSE PRINT "Proceed to next stage" ENDIF ELSE PRINT "B can be smaller than C" ENDIF a) SC=3, DC=3. b) SC=2, DC=3. c) SC=2, DC=4. d) SC=3, DC=2.

Model Test -2
1) The concept Finding and fixing defects does not help if the system built is unusable manner, belongs to which testing principle? a) Early Testing b) Testing shows presence of defects c) Absence-of-errors fallacy d) Pesticide paradox 2) Analyzing lessons learned for future releases and projects, improvement of test maturity, are a part of which phase? a) Test Implementation and execution b) Test Analysis and Design c) Evaluating the Exit Criteria and reporting d) Test Closure Activities and the

96

3) When we do Incident reporting? a) During test planning b) During test execution c) Throughout the life cycle d) Evaluating the Exit Criteria and reporting 4) Test Approach is a) A high level description of the test levels to be performed and the testing with in those levels for an organization. b) The implementation of the test strategy for a specific project. c) A document describing the scope, approach, resources and schedule of intended test activities? d) A high level document describing the principles, approach and major objectives of the organization regarding testing. 5) Regression testing mainly helps in a. Retesting fixed defects b. Checking for side-effects of fixes c. Checking the core gaps d. Ensuring high level sanity 6) Test data planning essentially includes a. Network b. Operational Model c. Boundary value analysis d. Test Procedure Planning 7) Which testing technique do you prefer for the following situations? 1. Severe time pressure 2. Inadequate specification a. Decision testing b. Error guessing c. statement testing d. Exploratory testing 8) Which of the statements below is the best assessment of how the test principles apply across the test life cycle? a) Test principles only affect the preparation for testing. b) Test principles only affect test execution activities. c) Test principles affect the early test activities such as review d) Test principles affect activities throughout the test life cycle. 9) Which of the following is not a non-functional test? a) Performance testing b) Interoperability testing c) Usability testing d) Portability testing 10) In a Preventative approach to testing when would you expect the bulk of the test design work to be begun? a) After the software or system has been produced. b) During development. c) As early as possible.

97

d) During requirements analysis. 11) The standard that gives Software Verification and Validation -Description a) ISO/IEC 12207 b) BS 7925-1 c) IEEE 1012-1998 d) ANSI/IEEE 729 12) Cyclomatic Complexity is a) The number of links in a program b) The number of decision points through a program c) The number of independent paths through a program d) The number of nodes in a program 13) Which of the following is not an interactive-incremental model? a) Prototyping model b) RAD model c) Agile model d) V model 14) N-switch testing is a form of a) Equivalence class partition b) Boundary value analysis c) State transition testing d) Decision table testing 15) COTS is known as a) Compliance of the software b) Change control of the software c) Commercial off the shelf software d) Capable off the shelf software 16) From the below pseudo code , calculate the MINIMUM number of test cases for statement coverage, and the MINIMUM number of test cases for decision coverage respectively. READ X READ Y IF X>YTHEN Print X is a big number ELSE Print Y is a big number ENDIF a) SC=3, DC=3. b) SC=2, DC=2. c) SC=1, DC=2. d) SC=2, DC=1. 17) Which of the following is Key Characteristics of Inspection? a) Pair programming or a technical lead review b) Scenarios, dry runs, peer group c) Open-ended sessions d) Includes Metrics

98

18) Which of the following are benefits and which are risks of using tools to support testing? 1 3 5 6 7 over reliance on the tools 2 greater consistency and repeatability objective assessment 4 unrealistic expectations underestimating the effort require maintaining the test assets generated by the tool ease of access to information about tests or testing repetitive work is reduced

a) Benefits: 3, 4, 6 and 7. Risks: 1, 2 and 5 b) Benefits: 1, 2, 3 and 7. Risks: 4, 5 and 6 c) Benefits: 2, 3, 6 and 7. Risks: 1, 4 and 5 d) Benefits: 2, 3, 5 and 6. Risks: 1, 4 and 7 19) Which of the following tools would you use to identify time dependencies and identify pointer arithmetic errors? a. Static analysis b. Coverage analysis c. Dynamic analysis d. Memory analysis 20) Which of the following is true about Informal Review? i. Led by Trained Moderator (not the author). ii. Pair programming or a technical lead review iii. Formal Follow up process. iv. Main objective is to find defects a) ii is true and i, iii, iv are false b) i, iii, iv are true and ii is false c) i, iii, iv are false and ii is true d) iii is true and I, ii, iv are false 21) Which of the following test activities is supported by Static analysis tools? a) The enforcement of coding standards b) Measure the percentage of specific types of code structure c) Test specification and design d) Manipulate the tests using scripting language 22) Which is not a test Oracle a) The existing system b) The code c) Individuals knowledge d) User manual 23) V-Model is: a) A software life-cycle model that is not relevant for testing b) The official software development and testing life-cycle model of ISTQB c) A testing life cycle model including unit, integration, system and acceptance phases d) A software development model that illustrates how testing activities integrate with software development phases 24) Which of the following factor is Not important in selecting a tool? a) Proof-of-concept to see whether the product works as desired and meets the requirements and objectives defined for it

99

b) Identification of the areas within the organization where tool support will help to improve testing process c) Cost of the tool d) Identifying and planning internal implementation 25) Generally when we choose the configuration management procedures and infrastructure? a) During Test analysis b) During Test planning c) During Test strategy preparation d) During Test Execution 26) Which of the following test activities comes under Test Monitoring? a) Determining the scope and risks, and identifying the objective of testing b) Setting the level of detail for test procedures in order to provide enough information to support reproducible test preparation and execution. c) Residual risks, such as defects not fixed or lack of test coverage in certain areas d) Test coverage of requirements, risks or code 27) Which one is not the task of test leader? a) Write or review a test strategy for the project, and test policy for the organization b) Set up adequate configuration management of testware for traceability. c) Set up the test environment (often coordinating with system administration and network management). d) Decide about the implementation of the test environment. 28) Which of the following is NOT part of configuration management: a) status accounting of configuration items b) auditing conformance to ISO 9001 c) record of changes to documentation over time d) controlled library access 29) Which of the following is the task of a Tester? i. Interaction with the Test Tool Vendor to identify best ways to leverage test tool on the project. ii. Decide what should be automated, to what degree, and how iii. Implement Tests on all test levels, execute and log the tests. iv. Create the Test Specifications a) i, ii, iii is true and iv is false b) ii, iii, iv is true and i is false c) i is true and ii, iii, iv are false d) iii and iv is correct and i and ii are false 30) Data flow analysis studies: a) Possible communications bottlenecks in a program. c) The use of data on paths through the code. d) The intrinsic complexity of the code. b) The rate of change of data values as a program executes. 31) Analyze the following highly simplified procedure: Ask: What type of room do you want, single or double? IF the customer replies single Say: only one single room is available

100

ELSE ELSE ENDIF

Say: single rooms are not available Say: only double rooms are available at this movement

Now decide the minimum number of tests required to cover all statements in the procedure a) 2 b) 3 c) 4 d) 5 32) Which of the following techniques is not considered to be White-box? a) LCSAJ testing b) Syntax testing c) Arc testing d) Statement testing 33) Which of the following is not performed in component testing? a) Functional testing b) Structural testing c) Stress testing d) Robustness testing 34) Which test design technique is useful, if our system requirement contains logical condition? a) Equivalence partitioning b) Decision table testing c) Boundary value analysis d) State transition testing 35) Manual Test script is also called? a) Test approach b) Test case specification c) Test procedure specification d) Test batch 36) Which of the following statement is correct? a) Product risks are more important than project risks b) Risks are prioritized on the basis of likelihood and impact c) Project risks are more important than Product risks d) All risks are equally important 37) What is the most important reason to use risk to drive testing efforts? a) Because risk-based testing is the most efficient approach to find defects b) Because risk-based testing is the most efficient way to show value c) Because testing every thing is not feasible d) Because software is inherently risky 38) Which of the following defines the scope of maintenance testing? a) The size of risk of any change(s) to the system b) Defects found at the last regression test run c) The coverage of the current regression pack d) The time since the last change was made to the system

101

39) Which of the following is not a drawback of Independent testing team? a) Isolation from the development team (if treated as totally independent). b) Independent testers may be the bottleneck as the last checkpoint. c) Independent testers see other and different defects, and are unbiased. d) Developers may lose a sense of responsibility for quality. 40) Consider the following statements: i. 100% statement coverage guarantees 100% branch coverage. ii. 100% branch coverage guarantees 100% statement coverage. iii. 100% branch coverage guarantees 100% decision coverage. iv. 100% decision coverage guarantees 100% branch coverage. v. 100% statement coverage guarantees 100% decision coverage. a) ii is True; i, iii, iv & v are False b) i & v are True; ii, iii & iv are False c) ii & iii are True; i, iv & v are False d) ii, iii & iv are True; i & v are False

Standards
ISO - International Organization for Standardization (1947) IEEE - Institute of Electrical and Electronics Engineers (1963) IEC - International Electrotechnical Commission (1906) BS (BSI) - British Standards (1901) CMMI- Capability Maturity Model Integration 1) IEEE 610.12-1990 IEEE Standard Glossary of Software Engineering Terminology 2) IEEE 829-1998 IEEE Standard for Software Test Documentation

102

The Types of Document: There are eight document types in the IEEE 829 standard, which can be used in three distinct phases of software testing: Preparation of Tests Test Plan: Plan how the testing will proceed. Test Design Specification: Decide what needs to be tested. Test Case Specification: Create the tests to be run. Test Procedure: Describe how the tests are run. Test Item Transmittal Report: Specify the items released for testing. Running the Tests Test Log: Record the details of tests in time order. Test Incident Report: Record details of events that need to be investigated. Completion of Testing Test Summary Report: Summarise and evaluate tests. 3) IEEE Standard 1012-1998 IEEE Standard for Software Verification and Validation -Description 4) IEEE Standard 1028-1997 IEEE Standard for Software Reviews -Description 5) IEEE 1008 IEEE Standard for Software Unit Testing

6) IEEE 1044-1993 IEEE Standard Classification for Software Anomalies 7) IEEE 1219-1998 Standard for Software Maintenance 8) ISO/IEC 9126-1:2001 (Software engineering Software product quality- part 1) Support for review, verification and validation, and a framework for quantitative quality evaluation, in the support process; Support for setting organisational quality goals in the management process. 9) ISO/IEC 12207:2008 Systems and software engineering -- Software life cycle processes

103

10) ISO/IEC 14598-1:1999 Information technology -- Software product evaluation 11) ISO/IEC 2382-1:1993 Data Processing -- Vocabulary -- Part 1: Fundamental terms 12) ISO 9000:2000 Quality management systems Fundamentals and vocabulary 13) BS 7925-2:1998 Software testing, Software component testing (This standard defines the process for software component testing using specified test case design and measurement techniques. This will enable users of the standard to directly improve the quality of their software testing, and improve the quality of their software products) 14) DO-178B:1992 Software Considerations in Airborne Systems and Equipment 15) BS7925-1 The British software testing standard governing testing terminology

Skill Test
(Environmental, Software Engineering and Quality Standards)
(Instruction: prepare answers in 3 to 5 lines for below given questions) 1) In Microsoft Windows, how many types of Operating systems are there, what are they, and give examples? 2) What is the difference between UNIX and LINUX? 3) What is the difference between Web Server and Application Server? 4) Differentiate Intranet, Internet and Extranet Applications?

5) Do you know about the Mainframes application, explain it?


6) Give brief description about the .Net Technology?

7) Can we operate a windows based application on UNIX Environment, Explain it? 104

8) What is the Main Purpose of XML in the Web? 9) What are the difference between General Programming Languages (C, C++, Java, and VC++ etc.) and Scripting Languages (VB script, Java script and Perl Script etc.) ? 10) Explain about the BFSI domain in 4 or 5 lines? 11) What is the major use of Microsoft Outlook Express? 12) Do you know about the Visual Source Safe? 13)Give brief description about the Agile Development Model? 14)What are the differences between Waterfall Model and V model?

15) Differentiate the Test Strategy and the Test Plan?


16)What are the important Testing Types for web applications? 17)What is the major Difference between ISO, IEEE standards and CMM/CMMI Levels? 18)Write definitions for the Master Data, Metadata and Runtime Data? 19) Explain about the IP Address and the MAC Address? 20) What are the major advantages in Web Applications than Client/Server Applications?

Configuration management
Configuration management Why New versions of software systems are created as they change For different machines/OS Offering different functionality Tailored for particular user requirements Configuration management is concerned with managing evolving software systems System change is a team activity CM aims to control the costs and effort involved in making changes to a system Involves the development and application of procedures and standards to manage an evolving software product May be seen as part of a more general quality management process When released to CM, software systems are sometimes called baselines as they are a starting point for further development Configuration management planning Starts during the early phases of the project All products of the software process may have to be managed

105

Specifications code Designs Programs Test data User manuals Thousands of separate documents may be generated for a large software system The CM plan Defines the types of documents to be managed and a document naming scheme Defines who takes responsibility for the CM procedures and creation of baselines Defines policies for change control and version management Defines the CM records which must be maintained Describes the tools which should be used to assist the CM process and any limitations on their use Configuration item identification Large projects typically produce thousands of documents which must be uniquely identified Some of these documents must be maintained for the lifetime of the software Document naming scheme should be defined so that related documents have related names. A hierarchical scheme with multi-level names is probably the most flexible approach The configuration database All CM information should be maintained in a configuration database This should allow queries about configurations to be answered Who has a particular system version? What platform is required for a particular version? What versions are affected by a change to component X? How many reported faults in version T? The CM database should preferably be linked to the software being managed Change management Software systems are subject to continual change requests From users From developers From market forces Change management is concerned with keeping track of these changes and ensuring that they are implemented in the most cost-effective way Change tracking tools A major problem in change management is tracking change status Change tracking tools track the status of each change request Automatically ensure that change requests are sent to the right people at the right time Integrated with E-mail systems allowing electronic change request distribution Derivation history

106

Record of changes applied to a document or code component Should record, in outline, the change made, the rationale for the change, who made the change and when it was implemented May be included as a comment in code If a standard prologue style is used for the derivation history, tools can process this automatically Version and release management Invent identification scheme for system versions Plan when new system version is to be produced Ensure that version management procedures and tools are properly applied Plan and distribute new system releases

Versions/variants/releases

Version An instance of a system which is functionally distinct in some way from other system instances Variant An instance of a system which is functionally identical but non-functionally distinct from other instances of a system Release An instance of a system which is distributed to users outside of the development team

Version identification Procedures for version identification should define an unambiguous way of identifying component versions Three basic techniques for component identification o Version numbering o Attribute-based identification o Change-oriented identification

Version management tools Version and release identification o Systems assign identifiers automatically when a new version is submitted to the system Storage management. o System stores the differences between versions rather than all the version code Change history recording o Record reasons for version creation Independent development o Only one version at a time may be checked out for change o Parallel working on different versions

Release management Releases incorporate changes forced on the system by errors discovered by users and by hardware changes They also incorporate new system functionality Release planning is concerned with when to issue a system version as a release

107

System releases Not just a set of executable programs May also include o Configuration files defining how the release is configured for a particular installation o Data files needed for system operation o An installation program or shell script to install the system on target hardware o Electronic and paper documentation o Packaging and associated publicity Systems are now normally released on CD-ROM or as downloadable installation files from the Web

Release problems

Customer may not want a new release of the system o They may be happy with their current system as the new version may provide unwanted functionality Release management must not assume that all previous releases have been accepted o All files required for a release should be re-created when a new release is installed

Release creation Release creation involves collecting all files and documentation required to create a system release Configuration descriptions have to be written for different hardware and installation scripts have to be written The specific release must be documented to record exactly what files were used to create it This allows it to be re-created if necessary System building The process of compiling and linking software components into an executable system Different systems are built from different combinations of components Invariably supported by automated tools that are driven by build scripts

System building problems Do the build instructions include all required components? o When there are many hundreds of components making up a system, it is easy to miss one out o This should normally be detected by the linker Is the appropriate component version specified? o A more significant problem. A system built with the wrong version may work initially but fail after delivery Are all data files available? o The build should not rely on 'standard' data files o Standards vary from place to place

108

Are data file references within components correct? Embedding absolute names in code almost always causes problems as naming conventions differ from place to place Is the system being built for the right platform o Sometimes must build for a specific OS version or hardware configuration Is the right version of the compiler and other software tools specified? o Different compiler versions may actually generate different code and the compiled component will exhibit different behaviour Key points Configuration management is the management of system change to software products A formal document naming scheme should be established and documents should be managed in a database The configuration database should record information about changes and change requests A consistent scheme of version identification should be established using version numbers, attributes or change sets System releases include executable code, data, configuration files and documentation System building involves assembling components into a system

Examination Guidelines
(ISTQB Foundation Level)
All questions must be written in US English. Use good grammar, punctuation, and spelling. Questions must be based on the syllabus but should also be consistent with the real world. Type of the exam: Objective (Multiple choices) Total no of Questions: 40 Pass marks: 26 (65%), No negative marks Examination fees: 4000 (Through authorized organization like NRSTT- 3500 only) Re-examination fees: 2500 Exam duration: 90 Minutes Result will be announced in 2 weeks, certificate will be sent in 8 weeks

109

ISTQB Foundation Level Certification Validity: Lifetime, where as Advanced


Certification Validity is 3 years. No pre-requisites for ISTQB Foundation Level Certification, where as Advanced Certification requires Foundation Certification and 2 years of work experience. 100000 ISTQB Certifications by Sep 2008

Types of multiple-choice questions Within the multiple-choice format, questions can be presented in different ways. For example, the amount of information presented in a questions stem can be limited or extensive. Also, a question writer can include written code within the stem, specifically for example, when writing questions to test knowledge of white box techniques. Following are examples of the type of multiple-choice items to be used in any ISTQB qualification. Correct answers should always be the first option. Basic Type Questions The basic multiple-choice question has a short stem and a single correct response. A limited amount of information is presented in the stem, and a single set of response options is presented to the candidates. The following example of a basic multiple-choice question is targeted to assess knowledge of static testing at K1 cognitive level of application. Example: What does a tester do during "Static testing"? a) Reviews requirements and compares them with the design b) Runs the tests on the exact same setup each time c) Executes test to check that all hardware has been set up correctly d) Runs the same tests multiple times, and checks that the results are statistically meaningful Roman Type Questions Another variation of the basic multiple-choice question is the Roman type. In this format, the candidate is presented with several statements; each proceeded by either a Roman numeral or a letter of the alphabet. This differs from the multiple-choice questions already discussed in that the response options may require the candidate to know or derive several pieces of related information. The task for the candidate is to select the option that represents the correct combination of statements; as shown in the following example:

Which of the following answers reflect when Regression testing should normally be performed? A. Every week B. After the software has changed C. On the same day each year D. When the environment has changed E. Before the code has been written

110

1) B & D are true, A, C & E are false 2) A & B are true, C, D & E are false 3) B, C & D are true, A & E are false 4) B is true, A, C, D & E are false

*** THE END ***

111