Showing posts with label ISTQB. Show all posts
Showing posts with label ISTQB. Show all posts

Monday, June 28, 2010

Test Plan and Test Strategy

Test Plan:A software project test plan is a document that describes the objectives, scope, approach and focus of a software testing effort. The process of preparing a test plan is a useful way to think through the efforts needed to validate the acceptability of a software product. The completed document will help people outside the test group understand the why and how of product validation. It should be thorough enough to be useful, but not so thorough that none outside the test group will be able to read it

•Approved Test Strategy Document.
•Test tools, or automated test tools, if applicable.
•Previously developed scripts, if applicable.
•Test documentation problems uncovered as a result of testing.
•A good understanding of software complexity and module path coverage, derived from general and detailed design documents, e.g. software design document, source code and software complexity data.
Outputs for this process:
•Approved documents of test scenarios, test cases, test conditions and test data.
•Reports of software design issues, given to software developers for correction.

Test Strategy
The test strategy is a formal description of how a software product will be tested. A test strategy is developed for all levels of testing, as required. The test team analyzes the requirements, writes the test strategy and reviews the plan with the project team. The test plan may include test cases, conditions, the test environment, a list of related tasks, pass/fail criteria and risk assessment.

Inputs for this process:
•A description of the required hardware and software components, including test tools. This information comes from the test environment, including test tool data.
•A description of roles and responsibilities of the resources required for the test and schedule constraints. This information comes from man-hours and schedules.
•Testing methodology. This is based on known standards.
•Functional and technical requirements of the application. This information comes from requirements, change request, technical and functional design documents.
•Requirements that the system can not provide, e.g. system limitations.
Outputs for this process:
•An approved and signed off test strategy document, test plan, including test cases.
•Testing issues requiring resolution. Usually this requires additional negotiation at the project management level.

Saturday, June 19, 2010

Few Important Glossary

Acceptance testing: Formal testing with respect to user needs, requirements, and business processes conducted to determine whether or not a system satisfies the acceptance criteria and to enable the user, customers or other authorized entity to determine whether or not to accept the system.

Adaptability: The capability of the software product to be adapted for different specified environments without applying actions or means other than those provided for this purpose for the software considered.

Audit: An independent evaluation of software products or processes to ascertain compliance to  standards,  guidelines,  specifications,  and/or  procedures  based  on  objective  criteria, including documents that specify:
(1) the form or content of the products to be produced
(2) the process by which the products shall be produced
(3) how compliance to standards or guidelines shall be measured.


Audit trail: A path by which the original input to a process (e.g. data) can be traced back through the  process, taking the process output as a starting point. This facilitates defect analysis and allows a process audit to be carried out.

Bespoke software: Software developed specifically for a set of users or customers. The opposite is off-the-shelf software.

Beta testing: Operational testing by potential and/or existing users/customers at an external site not otherwise involved with the developers, to determine whether or not a component or system satisfies the  user/customer needs and fits within the business processes. Beta testing is often employed as a form of external acceptance testing for off-the-shelf software in order to acquire feedback from the market.

Black-box test design technique: Procedure to derive and/or select test cases based on an analysis of the specification, either functional or non-functional, of a component or system without reference to its internal structure.
 
Blocked test case: A test case that cannot be executed because the preconditions for its execution are not fulfilled.

Bottom-up testing: An incremental approach to integration testing where the lowest level components  are  tested  first,  and  then  used  to  facilitate  the  testing  of  higher  level components. This process is repeated until the component at the top of the hierarchy is tested. See also integration testing.

Boundary value: An input value or output value which is on the edge of an equivalence partition or at the smallest incremental distance on either side of an edge, for example the minimum or maximum value of a range.

Boundary value analysis: A black box test design technique in which test cases are designed based on boundary values. See also boundary value.


Boundary value coverage: The percentage of boundary values that have been exercised by a test suite.

Business process-based testing: An approach to testing in which test cases are designed based on descriptions and/or knowledge of business processes.

Capability Maturity Model (CMM): A five level staged framework that describes the key elements of an  effective software process. The Capability Maturity Model covers best- practices for planning, engineering and managing software development and maintenance

Capability Maturity Model Integration (CMMI): A framework that describes the key elements of an  effective product development and maintenance process. The Capability Maturity Model Integration covers best-practices for planning, engineering and managing product development and maintenance

Concurrency testing: Testing to determine how the occurrence of two or more activities within  the  same  interval  of  time,  achieved  either  by  interleaving  the  activities  or  by simultaneous execution, is handled by the component or system.

Condition: A logical expression that can be evaluated as True or False, e.g. A>B. See also test condition.

Condition coverage: The percentage of condition outcomes that have been exercised by a test suite. 100% condition coverage requires each single condition in every decision statement to be tested as True and False.

Condition determination coverage: The percentage of all single condition outcomes that independently  affect a decision outcome that have been exercised by a test case suite.100% condition determination coverage implies 100% decision condition coverage.

Condition determination testing: A white box test design technique in which test cases are designed  to  execute  single  condition  outcomes  that  independently  affect  a  decision outcome.

Condition testing: A white box test design technique in which test cases are designed to execute condition outcomes.

Condition outcome: The evaluation of a condition to True or False.

Configuration management: A discipline applying technical and administrative direction and surveillance to:  identify and document the functional and physical characteristics of a configuration  item,  control  changes  to  those  characteristics,  record  and  report  change processing and implementation status, and verify compliance with specified requirements.

Configuration management tool: A tool that provides support for the identification and control of configuration items, their status over changes and versions, and the release of baselines consisting of configuration items

Conversion testing: Testing of software used to convert data from existing systems for use in replacement systems

Cost of quality: The total costs incurred on quality activities and issues and often split into prevention costs, appraisal costs, internal failure costs and external failure costs

COTS: Acronym for Commercial Off-The-Shelf software

Coverage: The degree, expressed as a percentage, to which a specified coverage item has been exercised by a test suite.

Coverage analysis: Measurement of achieved coverage to a specified coverage item during test execution referring to predetermined criteria to determine whether additional testing is required and if so, which test cases are needed


Cyclomatic complexity: The number of independent paths through a program. Cyclomatic complexity is defined as: L – N + 2P, where
- L = the number of edges/links in a graph
- N = the number of nodes in a graph
- P = the number of disconnected parts of the graph (e.g. a called graph and a subroutine) [After McCabe]


Data driven testing: A scripting technique that stores test input and expected results in a table or spreadsheet, so that a single control script can execute all of the tests in the table. Data driven testing is often used to  support the application of test execution tools such as capture/playback tools.

Data flow testing: A white box test design technique in which test cases are designed to execute definition and use pairs of variables

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  condition  coverage:  The  percentage  of  all  condition  outcomes  and  decision outcomes that  have been exercised by a test suite. 100% decision condition coverage implies both 100% condition coverage and 100% decision coverage.

Decision condition  testing:  A  white  box  test  design  technique  in  which  test  cases  are designed to execute condition outcomes and decision outcomes.

Decision coverage: The percentage of decision outcomes that have been exercised by a test suite. 100%  decision coverage implies both 100% branch coverage and 100% statement coverage.

Decision outcome: The result of a decision (which therefore determines the branches to be taken).

Decision table: A table showing combinations of inputs and/or stimuli (causes) with their associated outputs and/or actions (effects), which can be used to design test cases.

Decision table testing: A black box test design technique in which test cases are designed to execute the  combinations of inputs and/or stimuli (causes) shown in a decision table. [Veenendaal] See also decision table.

Decision testing: A white box test design technique in which test cases are designed to execute decision outcomes.

Defect: A flaw in a component or system that can cause the component or system to fail to perform its  required function, e.g. an incorrect statement or data definition. A defect, if encountered during execution, may cause a failure of the component or system.

Defect based test design technique: A procedure to derive and/or select test cases targeted at one or more defect categories, with tests being developed from what is known about the specific defect category. See also defect taxonomy.

Defect density: The number of defects identified in a component or system divided by the size of the component or system (expressed in standard measurement terms, e.g. lines-of- code, number of classes or function points).

Defect Detection Percentage (DDP): The number of defects found by a test phase, divided by the number found by that test phase and any other means afterwards.

Defect management: The process of recognizing, investigating, taking action and disposing of defects. It  involves recording defects, classifying them and identifying the impact. [After IEEE 1044]


Defect management tool: A tool that facilitates the recording and status tracking of defects and  changes.  They  often  have  workflow-oriented  facilities  to  track  and  control  the allocation, correction and  re-testing of defects and provide reporting facilities. See also incident management tool.

Defect masking: An occurrence in which one defect prevents the detection of another. [After
IEEE 610]

Defect report: A document reporting on any flaw in a component or system that can cause the component or system to fail to perform its required function. [After IEEE 829]

Defect taxonomy: A system of (hierarchical) categories designed to be a useful aid for reproducibly classifying defects


Desk checking: Testing of software or specification by manual simulation of its execution.

Development testing: Formal or informal testing conducted during the implementation of a component or system, usually in the development environment by developers. [After IEEE
610]

Domain: The set from which valid input and/or output values can be selected.

Driver: A software component or test tool that replaces a component that takes care of the control and/or the calling of a component or system. [After TMap]

Dynamic analysis:  The  process  of  evaluating  behavior,  e.g.  memory  performance,  CPU
usage, of a system or component during execution. [After IEEE 610]


Elementary comparison testing: A black box test design technique in which test cases are designed to execute combinations of inputs using the concept of condition determination coverage. [TMap]

Entry criteria: The set of generic and specific conditions for permitting a process to go forward with a defined task, e.g. test phase. The purpose of entry criteria is to prevent a task from starting which would entail more (wasted) effort compared to the effort needed to remove the failed entry criteria. [Gilb and Graham]

Entry point: The first executable statement within a component

Equivalence partition: A portion of an input or output domain for which the behavior of a component or system is assumed to be the same, based on the specification.

Equivalence partition coverage: The percentage of equivalence partitions that have been exercised by a test suite.

Equivalence partitioning: A black box test design technique in which test cases are designed to execute representatives from equivalence partitions. In principle test cases are designed to cover each partition at least once.

Error: A human action that produces an incorrect result. [After IEEE 610]

Error guessing:  A  test  design  technique  where  the  experience  of  the  tester  is  used  to anticipate what defects might be present in the component or system under test as a result of errors made, and to design tests specifically to expose them.

Exhaustive testing: A test approach in which the test suite comprises all combinations of input values and preconditions.

Exit criteria: The set of generic and specific conditions, agreed upon with the stakeholders, for permitting a  process to be officially completed. The purpose of exit criteria is to prevent a task from being considered completed when there are still outstanding parts of the task which have not been finished. Exit criteria are used to report against and to plan when to stop testing. [After Gilb and Graham]


Fail: A test is deemed to fail if its actual result does not match its expected result.

Failure: Deviation of the component or system from its expected delivery, service or result. [After Fenton]

Failure mode: The physical or functional manifestation of a failure. For example, a system in failure  mode  may  be  characterized  by  slow  operation,  incorrect  outputs,  or  complete termination of execution. [IEEE 610]

Failure Mode and Effect Analysis (FMEA): A systematic approach to risk identification and  analysis  of  identifying  possible  modes  of  failure  and  attempting  to  prevent  their occurrence. See also Failure Mode, Effect and Criticality Analysis (FMECA).

Failure Mode, Effect and Criticality Analysis (FMECA): An extension of FMEA, as in addition to the  basic FMEA, it includes a criticality analysis, which is used to chart the probability  of  failure  modes  against  the  severity  of  their  consequences.  The  result highlights failure modes with relatively high  probability and severity of consequences, allowing remedial effort to be directed where it will produce the greatest value. See also Failure Mode and Effect Analysis (FMEA).

Failure rate: The ratio of the number of failures of a given category to a given unit of measure, e.g.  failures per unit of time, failures per number of transactions, failures per number of computer runs. [IEEE 610]

False-fail result: A test result in which a defect is reported although no such defect actually exists in the test object.


Fault seeding: The process of intentionally adding known defects to those already in the component or system for the purpose of monitoring the rate of detection and removal, and estimating the number of remaining defects. [IEEE 610]

Fault seeding tool: A tool for seeding (i.e. intentionally inserting) faults in a component or system.

Fault tolerance: The capability of the software product to maintain a specified level of performance  in  cases  of  software  faults  (defects)  or  of  infringement  of  its  specified interface. [ISO 9126]

Fault Tree Analysis (FTA): A technique used to analyze the causes of faults (defects). The technique  visually models how logical relationships between failures, human errors, and external events can combine to cause specific faults to disclose

Frozen test basis: A test basis document that can only be amended by a formal change control process.

Function Point Analysis (FPA): Method aiming to measure the size of the functionality of an  information   system.  The  measurement  is  independent  of  the  technology.  This measurement may be used as a basis for the measurement of productivity, the estimation of the needed resources, and project control.

Functional integration: An integration approach that combines the components or systems for the purpose of getting a basic functionality working early. See also integration testing.

Functional requirement: A requirement that specifies a function that a component or system must perform. [IEEE 610]

Functional test design technique: Procedure to derive and/or select test cases based on an analysis  of  the  specification  of  the  functionality  of  a  component  or  system  without reference to its internal structure.

Functional testing: Testing based on an analysis of the specification of the functionality of a component or system.

Horizontal traceability: The tracing of requirements for a test level through the layers of test documentation  (e.g. test plan, test design specification, test case specification and test procedure specification or test script).


Impact analysis: The assessment of change to the layers of development documentation, test documentation  and  components,  in  order  to  implement  a  given  change  to  specified requirements.

Incident: Any event occurring that requires investigation. [After IEEE 1008]

Incident logging: Recording the details of any incident that occurred, e.g. during testing.

Incident management: The process of recognizing, investigating, taking action and disposing of incidents. It  involves logging incidents, classifying them and identifying the impact. [After IEEE 1044]


Incremental testing: Testing where components or systems are integrated and tested one or some at a time, until all the components or systems are integrated and tested.

Independence of testing: Separation of responsibilities,which encourages the accomplishment of objective testing. [After DO-178b]

Informal review: A review not based on a formal (documented) procedure.

Inspection: A type of peer review that relies on visual examination of documents to detect defects, e.g.  violations of development standards and non-conformance to higher level documentation.  The  most  formal  review  technique  and  therefore  always  based  on  a documented procedure. [After IEEE 610, IEEE 1028]

Iterative development model: A development life cycle where a project is broken into a usually large number of iterations. An iteration is a complete development loop resulting in a release (internal or external) of an executable product, a subset of the final product under development, which grows from iteration to iteration to become the final product.

Keyword driven testing: A scripting technique that uses data files to contain not only test data and expected results, but also keywords related to the application being tested. The keywords are interpreted by special supporting scripts that are called by the control script for the test.

LCSAJ: A  Linear  Code  Sequence  And  Jump,  consisting  of  the  following  three  items (conventionally identified by line numbers in a source code listing): the start of the linear sequence of executable  statements, the end of the linear sequence, and the target line to which control flow is transferred at the end of the linear sequence.

LCSAJ coverage: The percentage of LCSAJs of a component that have been exercised by a test suite. 100% LCSAJ coverage implies 100% decision coverage.

LCSAJ testing: A white box test design technique in which test cases are designed to execute LCSAJs.

Management review: A systematic evaluation of software acquisition, supply, development, operation,  or  maintenance  process,  performed  by  or  on  behalf  of  management  that monitors progress, determines the status of plans and schedules, confirms requirements and their  system  allocation,  or  evaluates  the  effectiveness  of  management  approaches  to achieve fitness for purpose. [After IEEE 610, IEEE 1028]

Mutation analysis: A method to determine test suite thoroughness by measuring the extent to which a test  suite can discriminate the program from slight variants (mutants) of the program.

Off-the-shelf software: A software product that is developed for the general market, i.e. for a large number of customers, and that is delivered to many customers in identical format.

Path coverage: The percentage of paths that have been exercised by a test suite. 100% path coverage implies 100% LCSAJ coverage.

Peer review:
A review of a software work product by colleagues of the producer of the product for the purpose of identifying defects and improvements. Examples are inspection, technical review and walkthrough.

Performance: The degree to which a system or component accomplishes its designated functions  within  given constraints regarding processing time and throughput rate. [After IEEE 610]

Priority: The level of (business) importance assigned to an item, e.g. defect.

Probe effect: The effect on the component or system by the measurement instrument when the component or system is being measured, e.g. by a performance testing tool or monitor. For example performance may be slightly worse when performance testing tools are being used.

Project: A project is a unique set of coordinated and controlled activities with start and finish dates  undertaken  to achieve an objective conforming to specific requirements, including the constraints of time, cost and resources. [ISO 9000]

Project risk: A risk related to management and control of the (test) project, e.g. lack of staffing, strict deadlines, changing requirements, etc.

Pseudo-random: A series which appears to be random but is in fact generated according to some prearranged sequence.

Quality: The degree to which a component, system or process meets specified requirements and/or user/customer needs and expectations. [After IEEE 610]

Quality assurance: Part of quality management focused on providing confidence that quality requirements will be fulfilled. [ISO 9000]

Quality attribute: A feature or characteristic that affects an item’s quality. [IEEE 610]

Quality management: Coordinated activities to direct and control an organization with regard to quality. Direction and control with regard to quality generally includes the establishment of  the  quality  policy  and  quality  objectives,  quality  planning,  quality  control,  quality assurance and quality improvement. [ISO 9000]

Regression testing: Testing of a previously tested program following modification to ensure that defects have not been introduced or uncovered in unchanged areas of the software, as a result of the changes made. It is  performed when the software or its environment is changed.

Release note: A document identifying test items, their configuration, current status and other delivery information delivered by development to testing, and possibly other stakeholders, at the start of a test execution phase. [After IEEE 829]

Requirement: A condition or capability needed by a user to solve a problem or achieve an objective that  must be met or possessed by a system or system component to satisfy a contract, standard, specification, or other formally imposed document. [After IEEE 610]

Requirements-based testing: An approach to testing in which test cases are designed based on test  objectives and test conditions derived from requirements, e.g. tests that exercise specific functions or probe non-functional attributes such as reliability or usability.

Requirements  management  tool:  A  tool  that  supports  the  recording  of  requirements, requirements   attributes   (e.g.  priority,   knowledge   responsible)   and   annotation,   and facilitates    traceability    through    layers    of    requirements    and    requirements    change management.  Some  requirements  management  tools  also  provide  facilities  for  static analysis, such as consistency checking and violations to pre-defined requirements rules.

Requirements phase:  The  period  of  time  in  the  software  life  cycle  during  which  the requirements for a software product are defined and documented. [IEEE 610]

Re-testing: Testing that runs test cases that failed the last time they were run, in order to verify the success of corrective actions.

Retrospective meeting: A meeting at the end of a project during which the project team members evaluate the project and learn lessons that can be applied to the next project.

Review: An evaluation of a product or project status to ascertain discrepancies from planned results and to recommend improvements. Examples include management review, informal review, technical review, inspection, and walkthrough. [After IEEE 1028]

Reviewer: The person involved in the review that identifies and describes anomalies in the product or project under review. Reviewers can be chosen to represent different viewpoints and roles in the review process.

Risk: A factor that could result in future negative consequences; usually expressed as impact and likelihood.

Risk  analysis:  The  process  of  assessing  identified  risks  to  estimate  their  impact  and probability of occurrence (likelihood).

Risk-based testing: An approach to testing to reduce the level of product risks and inform stakeholders on  their status, starting in the initial stages of a project. It involves the identification of product risks and their use in guiding the test process.

Risk control: The process through which decisions are reached and protective measures are implemented for reducing risks to, or maintaining risks within, specified levels.

Risk identification: The process of identifying risks using techniques such as brainstorming, checklists and failure history.

Risk level: The importance of a risk as defined by its characteristics impact and likelihood.The level of risk can be used to determine the intensity of testing to be performed. A risk level can be expressed either qualitatively (e.g. high, medium, low) or quantitatively.

Risk  management:  Systematic  application  of  procedures  and  practices  to  the  tasks  of identifying, analyzing, prioritizing, and controlling risk

Risk type: A specific category of risk related to the type of testing that can mitigate (control) that  category.  For  example  the  risk  of  user-interactions  being  misunderstood  can  be mitigated by usability testing.

Root cause:
A source of a defect such that if it is removed, the occurance of the defect type is decreased or removed. [CMMI]

Root cause analysis: An analysis technique aimed at identifying the root causes of defects. By directing  corrective measures at root causes, it is hoped that the likelihood of defect recurrence will be minimized.

Safety: The capability of the software product to achieve acceptable levels of risk of harm to people, business, software, property or the environment in a specified context of use. [ISO9126]

Scalability: The capability of the software product to be upgraded to accommodate increased loads. [After Gerrard]

Scalability testing: Testing to determine the scalability of the software product.

Scribe: The person who records each defect mentioned and any suggestions for process improvement during a review meeting, on a logging form. The scribe has to ensure that the logging form is readable and understandable.

Security: Attributes of software products that bear on its ability to prevent unauthorized access,  whether  accidental  or  deliberate,  to  programs  and  data.  [ISO  9126] 

Severity: The degree of impact that a defect has on the development or operation of a component or system. [After IEEE 610]

Site acceptance testing: Acceptance testing by users/customers at their site, to determine whether or not a component or system satisfies the user/customer needs and fits within the business processes, normally including hardware as well as software.

Smoke test: A subset of all defined/planned test cases that cover the main functionality of a component or system, to ascertaining that the most crucial functions of a program work, but not bothering with finer details. A daily build and smoke test is among industry best practices.

Software life cycle: The period of time that begins when a software product is conceived and ends when the  software is no longer available for use. The software life cycle typically includes a concept phase,  requirements phase, design phase, implementation phase, test phase, installation and checkout phase, operation and maintenance phase, and sometimes, retirement phase. Note these phases may overlap or be performed iteratively.

Software quality: The totality of functionality and features of a software product that bear on its ability to satisfy stated or implied needs. [After ISO 9126]

Specification: A document that specifies, ideally in a complete, precise and verifiable manner, the requirements, design, behavior, or other characteristics of a component or system, and, often, the procedures for determining whether these provisions have been satisfied. [After IEEE 610]

State diagram: A diagram that depicts the states that a component or system can assume, and shows the events or circumstances that cause and/or result from a change from one state to another. [IEEE 610]

State table: A grid showing the resulting transitions for each state combined with each possible event, showing both valid and invalid transitions.

State transition: A transition between two states of a component or system.

State transition testing: A black box test design technique in which test cases are designed to execute valid and invalid state transitions. See also N-switch testing.

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

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.

Static testing: Testing of a component or system at specification or implementation level without execution of that software, e.g. reviews or static code analysis.

Stress testing: A type of performance testing conducted to evaluate a system or component at or beyond the limits of its anticipated or specified work loads, or with reduced availability of resources such as access to memory or servers. [After IEEE 610]

Stub:
A skeletal or special-purpose implementation of a software component, used to develop or  test  a  component  that  calls  or  is  otherwise  dependent  on  it.  It  replaces  a  called component. [After IEEE 610]

Suspension criteria: The criteria used to (temporarily) stop all or a portion of the testing activities on the test items. [After IEEE 829]

System  of  systems:  Multiple  heterogeneous,  distributed  systems  that  are  embedded  in networks at multiple levels and in multiple domains interconnected addressing large-scale inter-disciplinary common problems and purposes.

System  integration  testing:  Testing  the  integration  of  systems  and  packages;  testing interfaces to external organizations (e.g. Electronic Data Interchange, Internet).

Technical review: A peer group discussion activity that focuses on achieving consensus on the technical approach to be taken. [Gilb and Graham, IEEE 1028]

Test: A set of one or more test cases. [IEEE 829]

Test approach: The implementation of the test strategy for a specific project. It typically includes the  decisions made that follow based on the (test) project’s goal and the risk assessment carried out, starting points regarding the test process, the test design techniques to be applied, exit criteria and test types to be performed.

Test  automation:  The  use  of  software  to  perform  or  support  test  activities,  e.g.  test management, test design, test execution and results checking.

Test basis: All documents from which the requirements of a component or system can be inferred. The  documentation on which the test cases are based. If a document can be amended only by way of formal amendment procedure, then the test basis is called a frozen test basis. [After TMap]

Test case: A set of input values, execution preconditions, expected results and execution postconditions, developed for a particular objective or test condition, such as to exercise a particular program path or to verify compliance with a specific requirement. [After IEEE 610]

Test Maturity Model (TMM): A five level staged framework for test process improvement, related to the  Capability Maturity Model (CMM), that describes the key elements of an effective test process.

Test Maturity Model Integrated (TMMi): A five level staged framework for test process improvement, related to the Capability Maturity Model Integration (CMMI), that describes the key elements of an effective test process.

Test oracle: A source to determine expected results to compare with the actual result of the software under  test. An oracle may be the existing system (for a benchmark), a usermanual, or an individual’s specialized knowledge, but should not be the code. [After Adrion]

Test plan: A document describing the scope, approach, resources and schedule of intended test activities. It identifies amongst others test items, the features to be tested, the testing tasks, who will do each task, degree of tester independence, the test environment, the test design techniques and entry and exit criteria to be used, and the rationale for their choice, and any risks requiring contingency planning. It is a record of the test planning process. [After IEEE 829]

Test planning: The activity of establishing or updating a test plan.

Test policy: A high level document describing the principles, approach and major objectives of the organization regarding testing.

Test Point Analysis (TPA): A formula based test estimation method based on function point analysis. [TMap]

Test procedure specification: A document specifying a sequence of actions for the execution of a test. Also known as test script or manual test script. [After IEEE 829]

Test process:  The fundamental test process comprises test planning and control, test analysis and design, test implementation and execution, evaluating exit criteria and reporting, and test closure activities.

Test Process Improvement (TPI): A continuous framework for test process improvement that describes the key elements of an effective test process, especially targeted at system testing and acceptance testing.

Test progress report: A document summarizing testing activities and results, produced at regular intervals,  to report progress of testing activities against a baseline (such as the original  test  plan)  and  to  communicate  risks  and  alternatives  requiring  a  decision  to management.

Test reproducibility: An attribute of a test indicating whether the same results are produced each time the test is executed.

Test schedule: A list of activities, tasks or events of the test process, identifying their intended start and finish dates and/or times, and interdependencies.

Test script: Commonly used to refer to a test procedure specification, especially an automated one.

Test session: An uninterrupted period of time spent in executing tests. In exploratory testing, each test session is focused on a charter, but testers can also explore new opportunities or issues during a session. The tester creates and executes test cases on the fly and records their progress

Test  specification:  A  document  that  consists  of  a  test  design  specification,  test  case specification and/or test procedure specification.

Test strategy: A high-level description of the test levels to be performed and the testing within those levels for an organization or programme (one or more projects).

Test suite: A set of several test cases for a component or system under test, where the post condition of one test is often used as the precondition for the next one.

Top-down testing: An incremental approach to integration testing where the component at the top of the component hierarchy is tested first, with lower level components being simulated by stubs. Tested components are then used to test lower level components. The process is repeated until the lowest level components have been tested. See also integration testing.

Traceability: The ability to identify related items in documentation and software, such as requirements with associated tests. See also horizontal traceability, vertical traceability.

Usability: The capability of the software to be understood, learned, used and attractive to the user when used under specified conditions. [ISO 9126]

V-model: A  framework  to  describe  the  software  development  life  cycle  activities  from requirements specification to maintenance. The V-model illustrates how testing activities can be integrated into each phase of the software development life cycle.

Validation: Confirmation by examination and through provision of objective evidence that the requirements for a specific intended use or application have been fulfilled. [ISO 9000]

Variable: An element of storage in a computer that is accessible by a software program by referring to it by a name.

Verification: Confirmation by examination and through provision of objective evidence that specified requirements have been fulfilled. [ISO 9000]

Vertical  traceability:  The  tracing  of  requirements  through  the  layers  of  development documentation to components.

Volume testing:
Testing where the system is subjected to large volumes of data.

Walkthrough:
A step-by-step presentation by the author of a document in order to gather information  and  to  establish  a  common  understanding  of  its  content.  [Freedman  and Weinberg, IEEE 1028]

White-box test design technique: Procedure to derive and/or select test cases based on an analysis of the internal structure of a component or system.

White-box testing: Testing based on an analysis of the internal structure of the component or system.

Wide Band  Delphi:  An  expert  based  test  estimation  technique  that  aims  at  making  an accurate estimation using the collective wisdom of the team members.

Wild pointer: A pointer that references a location that is out of scope for that pointer or that does not exist.

Monday, June 14, 2010

ISTQB Advance level sample paper 1

Examination Question 1

You have recently been employed by a software development company as a Test Manager. Your first active role within the company is to manage a small test team during the development of a new software product. You have been made aware of the negative feedback provided by customers of similar developed products, and so your aim is to improve this situation.

1)You have been brought on-board this project at an early stage, even before any requirements have been formally agreed. Explain the benefits of this from a test perspective.

2)The Project Manager has asked you about Test Strategies, so provide him with a written description of exactly what a Test Strategy is. Included in your description should be a brief summary of test phases that your team may provide during this project development.

3)As a Test Manager, a common requirement of you is to produce various other types of Test Management documentation. Give a brief overview of the following typical examples:

a.    Test Policy
b.    Project Test Plan
c.    Phases Test Plan

4)List the other types of processes that can influence, or be influenced by the ‘Test Process’.


Examination Question 2

A software company is developing an update to its existing product. The update contains some fixes to existing faults. The end customer who already has the existing product installed at its premises, expressed concern over the effect that an update might have on their system.


1)The customer has asked you (the Test Manager) to provide them with some confidence that the update will not adversely affect their current system.

Specifically, the customer would like to know in detail, which method you will use to ensure that any previously existing functionality will not be affected by the update.

Also, an explanation of the method you will use to ensure that the faulty functionality has now been fixed.


2)The Project Manager would like to know details on how you will log the any problems you find with the software whilst testing. He specifically requires the following information:
An example of a typical incident report. This should include headings and explanations of the type of information to include.

An explanation of the IEEE Std. 1044-1993 standard including its steps.

Examination Question 3

As a founding member of a start-up company’s software development department, you have the responsibility to employee individuals to make up a dedicated software testing team. 

1)Provide examples of the types of skills that you would expect from test team members.

2)Briefly describe what is meant by ‘Test Team’ dynamics. Also list the common test team roles including a brief description of each.

3)Provide a description of the relationship between Developers and Testers. Include common misunderstandings and also your suggestions to avoid them.

Examination Question 4

You have recently been employed by a software development company with a view to improve certain aspects of their testing process. The software they develop is situated on large network backbone routers (i.e. embedded). This causes issues with developers with regards to testing, as they rarely have the opportunity to physically test it for real, or even in a simulated environment. This results in the software being handed-over to the systems testers with a lack of confidence in the software that they have developed.

1)It has been suggested that ‘reviews’ could be useful in this type of situation. Provide a summary of what reviews actually are.

2)Provide a description of each type of known review, and any relevant benefits or hindrances to the situation detailed within the given scenario.

3)Describe a basic structure for a typical review, including who should attend and their roles within the review process

4)Provide some suggestions/guidelines to ensure that all future reviews are successful.

ISTQB 100 success Secrets - ISTQB Foundation Certification Software Testing the

Friday, June 11, 2010

ISTQB Books for Certification

For foundation Level:

FOUNDATIONS OF SOFTWARE TESTING by Dorothy Graham,Erik van Veenendaal,Isabel Evans,Rex Black and ISTQB Glossary version 2 plus some dump papers are sufficient enough for clearing the exam

For Advance Level:

1) Advanced Software Testing Vol.1 - by Rex Black for Test Analyst and Technical Test Analyst

2) The Software Test Engineer's Handbook: A Study Guide for the ISTQB Test Analyst and Technical Analyst Advanced Level Certificates (Rockynook Computing) (Paperback) by Graham Bath & Judy McKay".

3) Advanced Software Testing Vol.2 - by Rex Black for Test Manager


How to decide among Technical Test Analyst and Test Analyst If ur working as a BlackBox Tester then i would suggest u to go for Test Analyst,if ur working as a Whitebox tester and responsible for portability, Reliability etc then go for Technical Test Analyst.

ISTQB Foundation Level Paper 12

1.Name the test tool used by programmers to reproduce failures, investigate the state of programs and find the corresponding defect.

a.Configuration management tool
b.Debugging tool
c.Unit test framework tool
d.Stress testing tool


2. Which of the following tools offer support more appropriate for developers?

a.Static Analysis tools
b.Coverage measurement tools
c.Test Comparators
d.Modeling tools


3. True or false, coverage measurement tools apply to all test activities over the entire software life cycle.

a.True
b.False


4. Identify an objective of a pilot project:

a.Assessment of organizational maturity, strengths and weaknesses
b.Defining usage guidelines
c.Identification of opportunities for an improved test process supported by tools
d.Learn more detail about the tool


5. A gradual implementation with initial filters to exclude some messages
is an effective approach for what type of testing tools?

a.Test management tools
b.Static analysis tools
c.Performance tools
d.Test execution tools



6. Select the testing tool(s) that may have special considerations for use:

A.Dynamic Analysis
B.Test execution
C.Static Analysis
D.Monitoring

a. A, B & C
b. C & D
c. B & C
d. all of the above


7. Identify one or more of the potential benefit(s) of using tools:

A.Objective assessment
B.Capture tests by recording the actions of a manual tester
C.Replacement for test design and/or manual testing
D.Purchasing or leasing a tool

a.A & B
b.A only
c.D
d.None of the above


8. This test tool simulates the environment in which the test object will run:

a.Dynamic analysis tool
b.Monitoring tool
c.Coverage management tool
d.Test harness/unit test framework tool


9. Which tool(s) need to interface with other tools or spreadsheets in order to produce information in the best format for an organization?

a.Monitoring tool
b.Test management tool
c.Test comparators
d.Performance testing tool


10. Requirements management tools ________.

a.check for consistency
b.offer quantitative analysis (metrics) related to the tests
c.aid in understanding the code
d.may accelerate and improve the development process



11. Which characteristic identifies a tool that supports performance and monitoring?

a.Can calculate metrics from the code
b.May facilitate the testing of components or part of a system by simulating the environment in which that test object will run.
c.Often based on automated repetitive execution of tests, controlled by parameters
d.None of the above


12. Which of the following answers reflect characteristics of test management tools?:

A.Logging of test results and generation of progress reports
B.Improve the efficiency of testing activities by automating repetitive tasks.
C.Independent version control or interface with an external configuration management tool
D.Assignment of actions to people (e.g. fix or confirmation test)

a. B & D
b. A, B & D
c. A & C
d. B, C & D


13. Performance testing tools need someone with expertise in performance testing to help design the tests and interpret the results

a.True
b.False


14. This is done in a small-scale pilot project, making it possible to minimize impact if major hurdles are found:

a.Deployment of the test tool
b.Data-driven approach
c.Proof-of-concept
d.None of the above


15. Which testing tool supports developers, testers &/or quality assurance personnel in finding defects before dynamic testing is conducted?

a.Test Data Preparation tool
b.Modeling tool
c.Static analysis tool
d.Configuration Management tool


16. Success factors for the deployment of the tool within an organization include:

a.Rolling out the tool to the rest of the organization incrementally
b.Defining usage guidelines, implementing a way to learn lessons from tool use.
c.Adapting and improving processes to fit with the use of the too
d.Evaluation against clear requirements and objective criteria


17. The probe effect is the consequence of what type of testing tool?

a.Intrusive
b.Performance
c.Inclusive
d.Functional


18. Which scripting technique uses a more generic script that can read the test data and perform the same test with different data?

a.Timing approach
b.Test execution approach
c.Data-driven approach
d.Keyword-driven approach


19. Identify the testing tool that may also be referred to as a capture playback tool

a.Test harness/unit test framework
b.Test execution
c.Coverage measurement
d.Security
e.a & b


20. Mercury Quality Test Professional, as a software testing tool, could be classified under which of the following:

a.Static Analysis tools
b.Test Data preparation tools
c.Test Execution tools
d.Heuristic tools

ISTQB Foundation Level Paper 11

1. Condition coverage checks each of the ways that the condition can be made true or false.
a. True
b. False

2. Which of the items listed below is not a test case that covers certain test condition(s)?
a.A set of requirements
b.A set of input values
c.Execution preconditions
d.Execution post conditions

3. Which does not fall under test design specifications?
a.Specification identifier
b.Features to be tested
c.Approach requirements
d.Test identification
e.Test items

4. What will you put in the result column if the functionality under a test works correctly but causes an incorrectly spelled error message to be displayed?
a. Warn
b. Pass
c. Fail
d. None of the above

5. Behavioral testing involves a detailed understanding of:
a.The application domain
b.The business problem being solved
c.The mission the system serves
d.All of the above

6. Black box testing is:
a.Functional testing
b.Structural testing
c.Performance testing
d.Requirements testing

7. Which of these characteristics make a test not equivalent?
a. They all test the same thing
b. They involve the same input variables
c. They involve cases with small differences between inputs
d. They affect the same output variables

8. Anything that makes the program change its behavior marks the boundary between two classes?
a. True
b. False

9. A decision table is:
a.A table that shows what the program will do under any combination of relevant events
b.A table that shows the programs logic
c.Similar to a decision tree in the way that it lists information
d.All of the above

10. Which of the following is not appropriate for testing interactions between paths?
a.Path that people are particularly likely to follow
b.Choices at one menu level or data entry screen can affect the presentation of choices elsewhere
c.Test reaction to all combinations of valid and invalid inputs
d.Randomly select different paths in each test cycle

11. Select the criteria(s) that is not used for path testing:
a.Line coverage
b.Requirements coverage
c.Branch (or complete) coverage
d.Condition coverage

12. For which of the following test cases does test coverage analysis not assign the highest priority?
a.The ones that cover the most important quality risk
b.The ones that cover the requirements
c.The ones that cover the functions
d.The ones that cover conditions

13. Structural tests find bugs in low-level operations such as:
a.Lines of codes
b.Database schemas
c.Data flow and integrity
d.a & b

14. Beta testing is one of the techniques used for configuration coverage.
a.True
b.False

15. White box testing is a kind of testing that a programmer does during coding.
a.True
b.False

16. What is the main characteristic of the best tester?
a.The one who finds the most bugs
b.The one who embarrasses the most programmers
c.The one who gets the most bugs fixed
d.a & c

17. Testers miss many failures because they do not read the ______ carefully.
a.Output
b.Input
c.Test condition(s)
d.a & b

18. Use cases, often referred to as ______, are very useful for designing acceptance tests with customer/user participation.
a.Scenarios
b.Business processes
c.Test components
d.Conditions

19. A structured approach to the error guessing technique is to enumerate a list of possible errors and to design tests that attack these errors.
a.True
b.False

20. Select the use cases criteria(s) that satisfy the user goals of the primary actors.
a.Choose the system boundary
b.Finding Primary Actors
c.Finding Primary Goals
d.All of the above

ISTQB Foundation Level Paper 10

1. The objective for any review meeting is to solve problems with the design?
a. True
b. False

2. Which is not a role of a review facilitator during a review meeting?
a. Running the review meeting
b. Stopping Interruptions
c. Commenting on the design documentation
d. Keeping the discussion focused
e. Preparing a final summary report.

3. Which of the following is an example of static testing?
a.Black box testing
b.Structural testing
c.Path testing
d.Glass box testing
e.None of the above

4. Defects detected while testing are more costly to remove than those detected during reviews early in the life cycle.
a.True
b.False

5. Which of the following is not a task during the planning phase of a formal review?
a.Select the personnel
b.Allocate roles
c.Select which parts of documents to look at
d.Distribute Documentation
e.Define the entry and exit criteria

6. Which of the following is a form of static testing:
a. Appraisal
b. Walkthrough
c. Assessment
d. Gap Analysis

7. Desk Checking defines a process were someone reads the program carefully and analyzes its behavior without running test cases at the computer.
a. True
b. False

8. The transformation of information – either through parameters or a stored database – from one component of a system to another is:
a.Data Flow
b.Internal Flow
c.Control Flow
d.None of the above

9. Which of the items listed below is not a benefit of software reviews:
a.Development productivity improvements
b.Reduced development timescales
c.Reduced testing cost and time
d.Lifetime cost reductions
e.None of the above

10. During _______, the designer simulates the program, showing step by step what the program will do with test data supplied by the reviewers.
a.Inspections
b.Walkthroughs
c.Reviews
d.None of the above

11. The main purpose of _______ is to learn, gain understanding, and find defects.
a.Inspections
b.Walkthroughs
c.Reviews
d.None of the above

12. The main purpose of _________ is to make decisions, evaluate alternatives, find defects, solve technical problems and check conformance to specifications and standards.
a.Inspections
b.Walkthroughs
c.Reviews
d.None of the above

13. What is the Cyclomatic Complexity of the code below?
public void ProcessPages()
{
while(nextPage !=true)
{
if((lineCount<=linesPerPage) && (status != Status.Cancelled) && (morePages == true))
{
//....
}
}
}

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


14. _________ identifies how the program transitions from one state to another.
a.Data Flow
b.Internal Flow
c.Control Flow
d.None of the above


15. In an ideal review meeting, the following individual(s) do not make comments on design documentation.
a.Author
b.Scribe
c.Facilitator
d.Reviewer


16. Reviews, Static Analysis, and Dynamic testing have the same objective – Identifying defects.
a. True
b. False


17. During ______, reviewers check every line of the design against each item in a checklist.
a.Inspections
b.Walkthroughs
c.Reviews
d.None of the above


18. Which of the following types of defects are easier to find in reviews than in dynamic testing (select all that apply)?
a.deviations from standards
b.requirement defects
c.design defects
d.None of the above

19. Which is not a success factor for reviews?
a.Each review has a clear predefined objective.
b.The right people for the review objectives are involved.
c.Authors are held accountable for design mistakes.
d.Defects found are welcomed, and expressed objectively.
e.None of the above

20. Static analysis tools are typically used by developers (checking against predefined rules or programming standards) before and during component and integration testing, and by designers during software modeling.
a.True
b.False

ISTQB Foundation Level Paper 9

1. Select one that is not strength of a third-party testing organization
a.Expertise in test project management
b.Run tests quickly
c.Expert consulting and training services
d.None of the above

2. Testers should have access to the following in a test lab
a.Bug testing database
b.Test tracking spreadsheet
c.System configuration tracking database
d.a, b, & c

3. Choose an incorrect statement:
a.Testers at the component and integration level should be developers
b.Testers for risk-management should be test analysts
c.Testers at the acceptance test level should be business experts and users
d.Testers for operational acceptance testing should be operators

4. Exit Criterion determines:
a.When testing needs to continue
b.When system is ready for delivery
c.When testing has been completed
d.All of the above

5. The testing effort may not depend on the following factor:
a.Characteristics of reported bugs
b.Characteristics of the product
c.Characteristics of the development process
d.The outcome of testing

6. Risks allow us to decide where to (pick 2)
a.Design, code, and conduct testing
b.Focus in the test plan
c.Start testing and where to test more
d.Testing is used to reduce the risk of an adverse effect occurring, or to reduce the impact of an adverse effect
e. a & b

7. When testers report to their test managers about their testing effort, the focus should be on ____________
a.Boundary conditions, state machines, and load generators
b.Risk management and impact of serious test escapes on the reputation and revenues of the company
c.a & b
d.None of the above

8.Enforcement of source and version control standards is often delegated to Quality Assurance groups.
a.True
b.False

9. Select one that should not be part of selection of a test approach:
a.Risk of failure of project
b.Skills and experience of the people
c.The objective of testing endeavor and mission of the testing team
d.Regulatory aspects and nature of product/business
e.None of the above

10. Instead of buying repeated tasking from independent test agency, a test manager should ask for test plan, test cases, and suggestion for further work
a.True
b.False

11. The role of test leader cannot be performed by:
a.Project manager
b.Configuration manager
c.Development manager
d.QA manager
e.Manager of test group

12. Automated tests should consider
a.Time cost to create automated tests
b.Test delay due to creation of automated tests
c.Risks of missed bugs
d.Partial automation
e.All of the above

13. Choose one statement that is incorrect. Performance testing:
a.Can be tested using glass box or black box techniques
b.Objective is performance enhancement
c.Can be used to provide numerical estimate of required quality for gauging purposes
d.Can reflect bugs, especially when a part of the program used to run quickly is now slow

14. Which of these criterions are essential for beginning and completing various test phases?
a.Entry criterion spells out what must happen to allow a system to move into a particular phase
b.Continuation criteria define those conditions and situations that must prevail in the testing process to allow testing to continue effectively and efficiently
c.Exit criteria addresses the issue of how to determine when testing has been completed
d.All of the above

15. Metrics should be collected during and at the end of a test level in order to assess:
a.The adequacy of the test objectives for that level
b.The adequacy of the test approach
c.The effectiveness of the testing with respect to its objectives
d.All of the above

16. The costs involved in testing and quality assurance is ___________ than the costs associated with external failures.
a.More
b.Less
c.Same
d.Unimaginable

17. The point of writing problem reports is to get bugs ________
a.Analyzed
b.Reported
c.Fixed
d.Documented

18. Problem summary reports distributed to management should list:
a.Report number, severity
b.Report number, severity, summary
c.Report number, severity, summary, suggested fix
d.Report number, severity, summary, categorization

19. It is important to analyze complicated problem reports. The objectives of the analysis should not be to:
a.Find target customers who will be most affected
b.Find the most serious consequences of the problem
c.Find the simplest, shortest, and most general conditions that will trigger the bug
d.Find related problems

20. Dynamic and __________ approaches, such as exploratory testing were testing is more reactive to events than pre-planned, and where execution and evaluation are concurrent tasks.
a.Consultative
b.Regression-averse
c.Analytical
d.Heuristic

ISTQB Foundation Level Paper 8

1)What term describes the failure to perform a pre-defined command, a deviation between the expected and actual behavior?

a)Error
b)Fault
c)Failure
d)Fault Masking

2)What is the first step in the testing process?

a.specification
b.evaluating exit criteria and reporting
c.execution
d.planning

3) What are appraisal costs?

a.All testing costs and the costs of everything else the company does to look for errors.
b.Everything the company spends to prevent software and documentation errors.
c.All costs of coping with errors discovered during development and testing.
d.All costs of coping with errors discovered, typically by your customers, after the product is released.

4) Which is a form of static testing?

a. Appraisal
b. Walkthrough
c. Assessment
d. Gap Analysis

5) What is another name(s) for black-box testing?

a. Functional Testing
b. Specification-based Testing
c. Structure-based Testing
d. Behavioral Testing

1) A and D
2) A, B, C
3) A, B, and D
4) C and D


6) Structural tests find bugs in what low-level operations?

a. Lines of code
b. Data flow and integrity
c. Database schemas
d. User interface

1) A and C
2) A, B, and C
3) A and D
4) B and D

7) What term is used to describe the number of defects identified in a component or system divided by the size of the component or system?

a. Defect Size
b. Defect Detection Percentage
c. Defect Density
d. Defect Measurement

8) What is the definition of load testing?

a. Testing the application’s response and adaptation to changing levels of activity
b. Testing capacity limits on such variables as input volume or number of concurrent processes
c. Testing conducted to evaluate a system or component at or beyond the limits of its specified requirements
d. Testing of response time, throughput rates, and total job run times

9) Which of the following displays an exit criterion for the test team?

a.All software released to the test team is accompanied by release notes
b.The test team has executed the entire planned tests against the application under test
c.Twice-weekly bug review meetings (under the Change Control Board) occur until System Test Phase Exit to manage the open bug backlog and bug closure times
d.The Development teams have unit-tested all features and bug fixes scheduled for release

10) What describes functional testing?

a.sometimes has the same meaning as behavioral tests
b.simultaneously designing, developing, and executing tests
c.must be augmented with other test approaches to deal with potentially important quality risks such as performance, load, capacity, and volume
d.A & C

11) What term describes how a program transitions from one state to another?
a.Data Flow
b.Internal Flow
c.Control Flow
d.Structural Flow

12) Which of the use case criteria(s) satisfy the user goals of the primary actors?

a.Choose the system boundary
b.Finding Primary Actors
c.Finding Primary Goals
d.A, B, and C

13) What test document contains all the information about a specific test case, including requirements and the modules to be tested?

a. Test plan
b. Test case specification
c. Test design specification
d. Test procedure


14) What testing tool is used to generate test inputs or the actual tests from requirements, from a graphical user interface, from design models, or from code?

a. Test execution tools
b. Test harness tools
c. Test design tools
d. Modeling tools

15) Which is an objective of a pilot project?

a.Assessment of organizational maturity, strengths and weaknesses
b.Defining usage guidelines
c.Identification of opportunities for an improved test process supported by tools
d.Learn more detail about the tool

16) Which is a characteristic of test management tools?

a. Support the management of tests and the testing activities carried out
b. Store information about versions and builds of software and testware
c. Support developers, testers, and QA personnel in finding defects before dynamic testing
d. Manipulate databases, files, or data transmissions to set up test data to be used during the execution of tests

17) The following code segment contains a potential “divide by 0” error.

J=50
K=1
while (N>=10) and (N<=10) loop
M [K] = J/N
K = K + 1
N = N 1
end loop

Which of the following is the most effective way of detecting this error?

a. Source code inspection
b. Boundary testing
c. Compilation of the source code
d. Condition testing

18) What term describes testing performed to expose faults in the interfaces and the interaction between integrated components?

a. System Testing
b. Component Testing
c. Integration Testing
d. Interface Testing

19) What term is used to describe the act of locating and removing faults (bugs) from a system/product?
a.Testing
b.Fault Masking
c.Debugging
d.Decoding



20) Which of the following types of defects are easier to find in reviews than in dynamic testing?

a.deviations from standards
b.requirement defects
c.design defects
d.incorrect interface specifications

1) A and B
2) A, B, and D
3) C and D
4) A, B, C, and D


21) What term describes the interactions between actors, including users and the system, which produce a result of value to a system user?

a. Use Case
b. Test Case
c. Test Case Specification
d. Input/Output

22) What is the definition of failure costs?

a. Costs incurred because faults and deficiencies in a product remain undetected
b. Costs incurred because customer is dissatisfied with the product
c. Costs incurred due to lack of testing staff
d. Costs incurred due to poorly written requirements

23) Which of the following tools offer support more appropriate for developers?

a.Static Analysis tools
b.Test harness/unit test framework tools
c.Test data preparation tools
d.Test execution tools

1)A and C
2)A, B, and C
3)C and D
4)A, B, and D

24) What term is used to define the chance of an event, hazard, threat or situation occurring and its undesirable consequences, a potential problem?

a. Defect
b. Risk
c. Fault
d. Failure

25) Which of the following are types of black-box techniques?

a. Equivalence partitioning
b. Boundary input evaluation
c. Decision table testing
d. State transition testing

1) A and B
2) A and D
3) A, C, and D
4) C and D

26) Which of the following statements is incorrect?

a. Testers at the component and integration level should be developers
b. Testers for risk-management should be test analysts
c. Testers at the acceptance test level should be business experts and users
d. Testers for operational acceptance testing should be operators

27) Which of the following are success factors for the deployment of the tool within an organization?

a.Rolling out the tool to the rest of the organization incrementally
b.Defining usage guidelines, implementing a way to learn lessons from tool use
c.Adapting and improving processes to fit with the use of the tool
d.Evaluation against clear requirements and objective criteria

1)A and C
2)B and D
3)A, B, and C
4)B, C, and D


28) What test tool simulates the environment in which the test object will run?

a.Test harness/unit test framework tool
b.Dynamic analysis tool
c.Monitoring tool
d.Coverage management tool

29) What test strategy is informal and non-structured?

a.Equivalence partitioning
b.Validation strategy
c.White box testing
d.Ad hoc testing

30) Which of these describes system testing?

a. Typically the least expensive and least time consuming level of testing
b. Often represents the bulk of the testing effort
c. Typically the third step in the “V” model testing process
d. Forms the basis of a regression test set

1) A
2) B
3) B, C, and D
4) C and D


31) What term(s) can also be used to describe an error condition?

a.Defect
b.Internal Fault
c.Failure
d.Bug

1)A
2)A and B
3)A, B, C
4)A, B, and D

32) What are the level(s) are commonly found in the V-Model?

a.system testing
b.component (unit) testing
c.acceptance testing
d.interface testing

1) A and B
2) A, B, and D
3) A, B, and C
4) A, B, C, and D

33) Which of the following are types of white-box techniques?

a. Decision testing
b. Boundary value analysis
c. Statement testing
d. Use case testing

1) A and B
2) A and C
3) A, C, and D
4) C and D

34) What is the definition of test coverage?

a. The degree, expressed as a percentage, to which a specified coverage item has been exercised by a test suite
b. A sequence of events (paths) in the execution through a component or system
c. An analysis method that determines which parts of the software have been executed by the test suite and which parts have not been executed
d. The percentage of decision outcomes that have been exercised by a test suite

35) What statement is true regarding stress testing tools?

a. They monitor and report on how a system behaves under a variety of simulated conditions
b. They analyze, verify, and report on usage of specific system resources, and give warnings of possible service problems
c. They test the components or part of a system by simulating the environment in which that test object will run
d. They evaluate a system or component at or beyond the limits of its specified requirements

36) What is the Cyclomatic Complexity of the code below?

public void ProcessPages()
{
while(nextPage !=true)
{
if((lineCount<=linesPerPage) && (status != Status.Cancelled) && (morePages == true))
{
//....
}
}
}

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

37) What is requirements-based testing?

a. A test method using descriptions of business processes to design test cases
b. A test method based on objectives derived from requirements for the software component
c. A test method used to determine whether the system/software meets the specified usability requirements
d. A test method where test design and execution are conducted concurrently

38) What term is used to describe a test case without specific values for inputs and outputs; general conditions or classes are specified?

a.Physical(Concrete) test cases
b.Logical test cases
c.Boundary equivalent test cases
d.Blind Input test cases

39) Which of the following is an objective of an incident report?

a. Provide developers with feedback about the problem to enable identification, isolation,and correction as necessary
b. Provide test leaders a means of tracking the quality of the system under test and the progress of the testing
c. Provide ideas for test process improvement
d. Provide management with information regarding who is responsible for the defect

1) A
2) A and B
3) A, B, and C
4) A, B, C, and D

40) Which of the following answers reflect characteristics of test management tools?

a.Logging of test results and generation of progress reports
b.Improve the efficiency of testing activities by automating repetitive tasks
c.Independent version control or interface with an external configuration management tool
d.Assignment of actions to people (e.g. fix or confirmation test)

1)A and C
2)A, B, and D
3)B and D
4)B, C, and D

ISTQB Foundation Level Paper 7

1. What is failure?

A. Deviation from expected result to actual result
B. Defect in the software.
C. Error in the program code.
D. Fault in the system.

2. People who don’t participate in technical reviews
A. Analysts
B. Management
C. Developers
D. Testers

3. What type of testing is done to supplement the rigorous testing?
A. Regression testing.
B. Integration testing.
C. Error Guessing
D. System testing.

4. Capture and replay facilities are least likely to be used to ….
A. Performance testing
B. Recovery testing
C. GUI testing
D. User requirements.

5. What is the smallest number of test cases required to
Provide 100% branch coverage?
If (x>y)
x=x+1;
Else
y=y+1;
while (x>y)
{
y=x*y;
x=x+1;
}
A. 1
B. 2
C. 3
D. 4

6. Cyclomatic complexity is used to calculate
A. number of independent paths in the basis set of a program
B. number of binary decisions + 1
C. upper bound for the number of tests that must be conducted to ensure that all statements have been executed at least once
D. number of branches and decisions

7. 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

8. Match the following:
1. Test estimation
2. Test control
3. Test monitoring
a. measures of tracking process
b. effort required to perform activities
c. reallocation of resources
A. 1-b, 2-c, 3-a
B. 1-b, 2-a, 3-c
C. 1-c, 2-a, 3-b
D. 1-a, 2-b, 3-c

9. One of the following is not a part of white box testing as
per BS7925-II standards.
A. Random testing
B. Data Flow testing.
C. Statement testing.
D. Syntax testing.

10. Exclusive use of white box testing in a test-phase will:
A. Ensure the test item is adequately tested.
B. Make the need for black-box testing redundant.
C. Run the risk that the requirements are not satisfied.
D. Suffices for the unit testing phase.


11. Match the following.
1. Configuration identification
2. Configuration control
3. Status reporting
4. Configuration auditing

a. Maintains of CI’s in a library
b. Checks on the contents of the library
c. Function recording and tracking problems.
d. Requires the all CI’s and their versions in the system
are known

A. 1-d, 2-c, 3-d, 4-a.
B. 1-d, 2-a, 3-c, 4-b.
C. 1-a, 2-b, 3-d, 4-c.
D. 1-c, 2-b, 3-a, 4-d.

12. Cost of the reviews will not include.
A. Review process itself
B. Metrics analysis
C. Tool support.
D. Process improvement.

13. What type of testing will you perform on internet banking
solution?
A. System integration
B. Functional testing
C. Non-functional testing.
D. Requirements testing

14. Which tool will be used to test the flag memory leaks and
unassigned pointers
A. Dynamic analysis tool
B. Static Analysis tool
C. Maintenance tool.
D. Configuration tool.

15. Which of the following is not included in Test Plan?
A. Features to be tested.
B. Environmental needs.
C. Suspension criteria.
D. Expected results.

16. A piece of software has been given….what tests in the
Following will you perform?
1) Test the areas most critical to business processes
2) Test the areas where faults will be maximum
3) Test the easiest functionalities

A. 1&2 are true and 3 is false.
B. 1,2&3 are true.
C. 1 is true, 2&3 are false.
D. 1&2 are false, 3 is true.

17. Amount of testing performed will not depend on
A. Risks involved
B. Contractual requirements
C. Legal requirements
D. Test data.

18. Which of the following provides the biggest potential cost
saving from use of CAST?
A. Test management
B. Test design
C. Test planning
D. Test execution

19. Testing is not done to ….
A. Find faults
B. Improve quality
C. Check user friendliness.
D. Improve software accuracy

20. Software quality is not relevant to …
A. Correctness
B. Usability
C. Viability
D. Reusability.


21. Which of the following are false?
A. Incidents should always be investigated and resolved.
B. Incidents occur when expected and actual results differ.
C. Incidents can be analyzed to assist in test process
improvement.
D. An incident can be raised against documentation.

22. Which of the following is a type of non-functional testing?
A. Usability testing.
B. Statement Coverage.
C. Dataflow testing.
D. Cause-effect graphing.

23. To make a test effective it is most important that:
A. It is easy to execute.
B. It is designed to detect faults if present.
C. The expected outcome is specified before execution.
D. It is unlikely to delay progress.

24. Error guessing is:
A. An appropriate way of deriving system tests.
B. Only used if good requirements are not available.
C. Only used when good requirements are available.
D. The most appropriate way of deriving system tests.

25. A standard for software testing terminology is:
A. IEEE 802.11
B. ISO 9001
C. BS 7925-1
D. BS 7925-2

26. Which of the following is true of V-model?
A. It includes the verification of designs.
B. It states that modules are tested against user
requirements.
C. It specifies the test techniques to be used.
D. It only models the testing phase.

27. Which of the following is NOT part of a high level test plan?
A. Functions not to be tested.
B. Environmental requirements.
C. Analysis of Specifications.
D. Entry and Exit criteria.

28. When do you stop testing?
A. When the specified number of faults are found.
B. When the test completion criteria are met.
C. When all high and medium priority tests are complete.
D. When all statements have been executed.

29. Which of the following is least important in test
management?
A. Estimating test duration.
B. Incident Management.
C. Configuration Management.
D. De-bugging.

30. 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. Both A & B.

31. Which of the following statements is true of static analysis:
A. Compiling code is not a form of static analysis.
B. Static analysis need not be performed before imperative
code is executed.
C. Static analysis can find faults that are hard to find with
dynamic testing.
D. Extensive statistic analysis will not be needed if white-
Box testing is to be performed.

32. Regression testing always involves
A. Testing whether a known software fault been fixed.
B. Executing a large number of different tests.
C. Testing whether modifications have introduced adverse
side effects.
D. Using a test automation tool.

33. A field failure occurs when multiple users access a system.
Which of the following is true?
A. This is an acceptable risk of a multi-user system.
B. Insufficient functional testing has been performed.
C. This indicates an important non-functional requirement was not specified and tested.
D. It is not possible to test against such events prior to release.

34. Integration testing in the large involves:
A. Testing the system when combined with other systems.
B. Testing a sub-system using stubs and drivers.
C. Testing a system with a large number of users.
D. Combing software components and testing them in one
go.

35. Data flow analysis studies:
A. How rapidly data is transferred through 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.

36. The oracle assumption is that:
A. There is some existing system against which test output
may be checked.
B. The tester knows everything about the software under
test.
C. The tester can routinely identify the correct outcome of
a test.
D. Tools are used to check the results of testing.


36 The following text will be used in Q.37 and Q.38. 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%

37. To the nearest $ which of these is a valid Boundary Value
Analysis test case?
A. $1500
B. $32001
C. $28000
D. $33501

38. Which of these groups of numbers would fall into the same
equivalence class?
A. $5800; $28000; $32000
B. $0; $200; $4200
C. $5200; $5500; $28000
D. $28001; $32000; $35000

39. Which of the following is NOT a characteristic of User
Acceptance Testing?
A. Use of automated test execution tools.
B. Testing performed by users.
C. Testing against acceptance test criteria.
D. Integration of system with user documentation.

40. For software to be reliable it must:
A. Be easy to maintain.
B. Be unlikely to cause a failure.
C. Never fail under any circumstances.
D. Be written according to coding standards.


1. A 26. B
2. B 27. C
3. C 28. B
4. D 29. D
5. B 30. A
6. B 31. A
7. D 32. C
8. A 33. C
9. D 34. A
10. C 35. B
11. B 36. C
12. C 37. D
13. C 38. A
14. A 39. A
15. D 40. B
16. A
17. D
18. D
19. D
20. C
21. C
22. A
23. C
24. D
25. C

ISTQB Foundation Level Paper 6

1.Test granularity refers to:
a.Any way of determining the expected result for a test case.
b.A quality improvement idea common in software development.
c.The fineness or coarseness of a test’s focus.
d.The impact of a bug on the system under test.

2.The prime benefit of testing is that it results in improved defects
a.True
b.False

3.A bug report is a:
a.A collection of independent, reusable test cases.
b.A technical document that describes the various symptoms or failure modes associated with a single bug.
c.A deliverable that details the strategic approach to a testing effort
d.A & B

4.A software error can be described as:
a.A description of the relationship between two or more variables or set members in which the value of one does not influence the values of others.
b.Any ill-advised, substandard, or temporary fix applied to an urgent problem in the (often misguided) belief that doing so will keep a project moving forward.
c.The process in which developers determine the root cause of a bug and identify possible fixes.
d.A mismatch between the program and its specification.

5.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.

6.Testing looks for situations in which a product fails to meet the developer’s expectations in specific areas.
a.True
b.False

7.Select a reason that does not support the idea of using separate test plans for test subprojects that are distinct in one or more ways:
a.Different resources
b.Different time periods
c.Different methodologies
d.Different objectives
e.Different audiences

8.The testing effort begins with:
a.Test planning
b.Test case design
c.Test execution
d.B & C
e.A & B

9.Testing during the design stage involves:
a.Examining the design documents
b.Reading drafts of the planning documents
c.Acceptance or qualification testing
d.None of the above

10. A well-designed test system promotes:
a.Principles
b.Actions
c.Resources
d.Accountability

11.When testing operating systems or applications, the first step of testing a new build should consist of :
a.Notifying test lead
b.Updating requirements
c.Testing the upgrade/installation procedures
d.A & B

12. The general rule of test execution is that you must always create a test procedure that will force the program to use the data you’ve entered and to prove that it is using your data correctly.
a.True
b.False

13. Which is not a goal of writing effective Problem/Bug reports?
a.Illustrate how to fix the problem
b.Explain how to reproduce the problem
c.Analyze the error so you can describe it in a minimum number of steps
d.Write a report that is complete, easy to understand, and non-antagonistic

14.Which of the following displays an exit criterion for the test team?
a.All software released to the test team is accompanied by release notes
b.The test team has executed the entire planned tests against the application under test.
c.Twice-weekly bug review meetings (under the Change Control Board) occur until System Test Phase Exit to manage the open bug backlog and bug closure times.
d.The Development teams have unit-tested all features and bug fixes scheduled for release.

15. The daily closure period refers to:
a.The average for all closed bugs, including the current day and all previous days
b.The amount of bugs opened over a 24 hour period
c.The average number of days between the opening of a bug and its resolution for all bugs closed on the same day.
d.None of the Above

16. Integrity testing involves:
a.The testing of pseudo code
b.Performance testing
c.Alpha testing
d.The final phase of testing prior to deployment

17. Testing literature reflects and promotes a strongly held belief that product reliability will not be better if testing is done by a fully independent test agency.
a.True
b.False

18. Select the item(s) that are general testing principles:
a.Testing shows a presence of defects
b.Exhaustive testing is impossible
c.Automation tools can be a great strategy
d.Absence-of-errors fallacy

19. Which is not a major task of test implementation and execution:
a.Develop and prioritizing test cases, creating test data, writing test procedures and optionally, preparing test harness and writing automated test scripts.
b.Logging the outcome of test execution and recording the identities and versions of the software under test, test tools and testware.
c.Checking test logs against the exit criteria specified in test planning.
d.Verifying that the test environment has been set up correctly.

20.Select the item(s) that compose test objectives:
a.Finding defects
b.Gaining confidence about the level of quality and providing information
c.Preventing tools
d.Utilization of testware