Static Testing Flashcards
What is static testing?
Static testing is a system of white box testing where developers verify or check the code in the early stages of development before it is deployed. It relies on the manual examination of work products & tool-driven evaluation of the code. Both manual and tool-driven testing assess the code without actually executing it.
What early work products can be examined using static testing?
Almost any work product can be examined using static testing Ex:
• Specifications such as: Business Requirements, Functional Requirements and security Requirements
• Epics, user stories and acceptance criteria
• Architecture and design specs
• code, user guides, contracts
What are the benefits of static testing?
Benefits of static Testing:
• Enables early detection of defects before deployment - the earlier defects are found, the cheaper they are to fix
• Detecting & correcting defects more efficiently, prior to dynamic testing
• Identifying defects not easily found by dynamic testing
• Reducing cost & time for development and testing
What’s the difference between static and dynamic testing?
Distinctions between static & dynamic testing include:
- static testing finds defects in work products directly & dynamic testing identifies failures caused by defects when the software is run
- static testing is done by examining the code without executing it. while dynamic testing is done by executing the code without necessarily examining it
- static testing is done in the verification stage while dynamic testing is done in the validation stage
- static testing happens before deployment whereas dynamic testing is performed after code deployment
- static testing involves a checklist for testing process while dynamic testing uses test cases
- static testing prevents defects while dynamic testing finds & fixes defects
What are formal reviews and informal reviews? What factors make a review formal or informal?
Formal Reviews-include team participation, documented results, documented procedures
Informal Reviews - have no defined process and no formal documentation
- The formality of the review process is related to factors such as:
• The SDLC model
• The maturity of the development process
• The complexity of work to be reviewed
• Any legal or regulatory requirements
• And the need for an audit trail
What are some objectives of reviews?
The Review Process comprises of the following activities:
① Planning
② Estimating effort & timeframe
③ Identifying review characteristics such as review type, roles, activities and checklists
④ Selecting the participants & defining their roles
⑤ Defining the entry and exit criteria (for more formal review types such as inspections)
What are the basic steps for initiating and conducting reviews?
Steps of Initiating the Review may include:
① Distributing the work product and other related work items ie. Checklists, log forms
② Explaining scope, objectives, processes and roles to the participants
③ Answering any questions from participants
Steps for conducting an individual review
① Review all or part of the work product
② Note defects, recommendations and questions
What are the 6 roles involved in a formal review?
A typical Formal Review has the following roles according to the ISTQB:
① Author-creates the product under review
② Management - planning & execution of reviews
③ Facilitator - mediates & ensures effective running of the review
④ Review Leader-takes overall responsibility for the review; decides who will be involved
⑤ Reviewers-performs the review; identifies potential defects
⑥ Scribe-collates potential defects found & records new potential defects
What are the 4 most common types of reviews?
① Informal Review-not based on a formal process
② Walkthrough
③ Technical Review
④ Inspection
What are the attributes of an informal review?
Informal Review-not based on a formal process
• Detecting potential defects
• Generating new ideas or solutions
What are the attributes of a walkthrough review?
Walkthrough
• Find defects, improve the software product
• Consider alternative implementations
• Evaluate conformance to standards
• Exchange ideas about techniques and style variations
• Training participants
• achieving consensus
What are the attributes of a technical review?
Technical Review
• Gaining consensus
• Detecting Potential Defects
• Evaluating Quality
• Building confidence
• Reviewers should be technical peers of the author
What are the attributes of an inspection review?
Inspection
• Detecting potential defects
• Evaluating quality
• Building confidence
• Preventing future similar defects
• Motivate authors to improve future work products and the software development process
• Used to help achieve a consensus
• Following a defined process based on rules and checklists