Table of Contents

Jamie Mitchell’s Acknowledgements

Rex Black’s Acknowledgements

Introduction

1        The Technical Test Analyst’s Tasks in Risk-Based Testing

1.1      Introduction

1.2      Risk Identification

1.3      Risk Assessment

1.4      Risk Mitigation or Risk Control

1.5      An Example of Risk Identification and Assessment Results

1.6      Risk-Aware Testing Standard

1.7      Sample Exam Questions

2        Structure-Based Testing

2.1      Introduction

2.1.1      Control Flow Testing Theory

2.1.2      Building Control Flow Graphs

2.1.3      Statement Coverage

2.1.4      Decision Coverage

2.1.5      Loop Coverage

2.1.6      Hexadecimal Converter Exercise

2.1.7      Hexadecimal Converter Exercise Debrief

2.2      Condition Coverage

2.3      Decision Condition Coverage

2.4      Modified Condition/Decision Coverage (MC/DC)

2.4.1      Complicating Issues: Short-Circuiting

2.4.2      Complicating Issues: Coupling

2.5      Multiple Condition Coverage

2.5.1      Control Flow Exercise

2.5.2      Control Flow Exercise Debrief

2.6      Path Testing

2.6.1      Path Testing via Flow Graphs

2.6.2      Basis Path Testing

2.6.3      Cyclomatic Complexity Exercise

2.6.4      Cyclomatic Complexity Exercise Debrief

2.7      API Testing

2.8      Selecting a Structure-Based Technique

2.8.1      Structure-Based Testing Exercise Debrief

2.9      A Final Word on Structural Testing

2.10    Sample Exam Questions

3        Analytical Techniques

3.1      Introduction

3.2      Static Analysis

3.2.1      Control Flow Analysis

3.2.2      Data Flow Analysis

3.2.2.1      Define-Use Pairs

3.2.2.2      Define-Use Pair Example

3.2.2.3      Data Flow Exercise

3.2.2.4      Data Flow Exercise Debrief

3.2.2.5      A Data Flow Strategy

3.2.3      Static Analysis to Improve Maintainability

3.2.3.1      Code Parsing Tools

3.2.3.2      Standards and Guidelines

3.2.4      Call Graphs

3.2.4.1      Call-Graph-Based Integration Testing

3.2.4.2      McCabe’s Design Predicate Approach to Integration

3.2.4.3      Hex Converter Example

3.2.4.4      McCabe Design Predicate Exercise

3.2.4.5      McCabe Design Predicate Exercise Debrief

3.3      Dynamic Analysis

3.3.1      Memory Leak Detection

3.3.2      Wild Pointer Detection

3.3.3      Dynamic Analysis Exercise

3.3.4      Dynamic Analysis Exercise Debrief

3.4      Sample Exam Questions

4        Quality Characteristics for Technical Testing

4.1      Introduction

4.2      Security Testing

4.2.1      Security Issues

4.2.1.1      Piracy

4.2.1.2      Buffer Overflow

4.2.1.3      Denial of Service

4.2.1.4      Data Transfer Interception

4.2.1.5      Breaking Encryption

4.2.1.6      Logic Bombs/Viruses/Worms

4.2.1.7      Cross-Site Scripting

4.2.1.8      Timely Information

4.2.1.9      Internal Security Metrics

4.2.1.10    External Security Metrics

4.2.1.11    Exercise: Security

4.2.1.12    Exercise: Security Debrief

4.3      Reliability Testing

4.3.1      Maturity

4.3.1.1      Internal Maturity Metrics

4.3.1.2      External Maturity Metrics

4.3.2      Fault Tolerance

4.3.2.1      Internal Fault Tolerance Metrics

4.3.2.2      External Fault Tolerance Metrics

4.3.3      Recoverability

4.3.3.1      Internal Recoverability Metrics

4.3.3.2      External Recoverability Metrics

4.3.4      Compliance

4.3.4.1      Internal Compliance Metrics

4.3.4.2      External Compliance Metrics

4.3.5      An Example of Good Reliability Testing

4.3.6      Exercise: Reliability Testing

4.3.7      Exercise: Reliability Testing Debrief

4.4      Efficiency Testing

4.4.1      Multiple Flavors of Efficiency Testing

4.4.2      Modeling the System

4.4.2.1      Identify the Test Environment

4.4.2.2      Identify the Performance Acceptance Criteria

4.4.2.3      Plan and Design Tests

4.4.2.4      Configure the Test Environment

4.4.2.5      Implement the Test Design

4.4.2.6      Execute the Test

4.4.2.7      Analyze the Results, Tune and Retest

4.4.3      Time Behavior

4.4.3.1      Internal Time Behavior Metrics

4.4.3.2      External Time Behavior Metrics

4.4.4      Resource Utilization

4.4.4.1      Internal Resource Utilization Metrics

4.4.4.2      External Resource Utilization Metrics

4.4.5      Compliance

4.4.5.1      Internal Compliance Metric

4.4.5.2      External Compliance Metric

4.4.6      Exercise: Efficiency Testing

4.4.7      Exercise: Efficiency Testing Debrief

4.5      Maintainability Testing

4.5.1      Analyzability

4.5.1.1      Internal Analyzability Metrics

4.5.1.2      External Analyzability Metrics

4.5.2      Changeability

4.5.2.1      Internal Changeability Metrics

4.5.2.2      External Changeability Metrics

4.5.3      Stability

4.5.3.1      Internal Stability Metrics

4.5.3.2      External Stability Metrics

4.5.4      Testability

4.5.4.1      Internal Testability Metrics

4.5.4.2      External Testability Metrics

4.5.5      Compliance

4.5.5.1      Internal Compliance Metric

4.5.5.2      External Compliance Metric

4.5.6      Exercise: Maintainability Testing

4.5.7      Exercise: Maintainability Testing Debrief

4.6      Portability Testing

4.6.1      Adaptability

4.6.1.1      Internal Adaptability Metrics

4.6.1.2      External Adaptability Metrics

4.6.2      Replaceability

4.6.2.1      Internal Replaceability Metrics

4.6.2.2      External Replaceability Metrics

4.6.3      Installability

4.6.3.1      Internal Installability Metrics

4.6.3.2      External Installability Metrics

4.6.4      Coexistence

4.6.4.1      Internal Coexistence Metrics

4.6.4.2      External Coexistence Metrics

4.6.5      Compliance

4.6.5.1      Internal Compliance Metrics

4.6.5.2      External Compliance Metrics

4.6.6      Exercise: Portability Testing

4.6.7      Exercise: Portability Testing Debrief

4.7      General Planning Issues

4.8      Sample Exam Questions

5        Reviews

5.1      Introduction

5.2      Using Checklists in Reviews

5.2.1      Some General Checklist Items for Design and Architecture Reviews

5.2.2      Deutsch’s Design Review Checklist

5.2.3      Some General Checklist Items for Code Reviews

5.2.4      Marick’s Code Review Checklist

5.2.5      The Open Laszlo Code Review Checklist

5.3      Deutsch Checklist Review Exercise

5.4      Deutsch Checklist Review Exercise Debrief

5.5      Code Review Exercise

5.6      Code Review Exercise Debrief

5.7      Sample Exam Questions

6        Test Tools and Automation

6.1      Integration and Information Interchange between Tools

6.2      Defining the Test Automation Project

6.2.1      Preparing for a Test Automation Project

6.2.2      Why Automation Projects Fail

6.2.3      Automation Architectures (Data Driven vs. Keyword Driven)

6.2.3.1      The Capture/Replay Architecture

6.2.3.2      Evolving from Capture/Replay

6.2.3.3      The Simple Framework Architecture

6.2.3.4      The Data-Driven Architecture

6.2.3.5      The Keyword-Driven Architecture

6.2.4      Creating Keyword-Driven Tables

6.2.4.1      Building an Intelligent Front End

6.2.4.2      Keywords and the Virtual Machine

6.2.4.3      Benefits of the Keyword Architecture

6.2.4.4      Creating Keyword-Driven Tables Exercise

6.2.4.5      Keyword-Driven Exercise Debrief

6.3      Specific Test Tools

6.3.1      Fault Seeding and Fault Injection Tools

6.3.2      Performance Testing and Monitoring Tools

6.3.2.1      Data for Performance Testing

6.3.2.2      Building Scripts

6.3.2.3      Measurement Tools

6.3.2.4      Performing the Testing

6.3.2.5      Performance Testing Exercise

6.3.2.6      Performance Testing Exercise Debrief

6.3.3      Tools for Web Testing

6.3.4      Model-Based Testing Tools

6.3.5      Tools to Support Component Testing and Build Process

6.4      Sample Exam Questions

7        Preparing for the Exam

Appendix

A        Bibliography

Advanced Syllabus Referenced Standards

Advanced Syllabus Referenced Books

Advanced Syllabus Other References

Other Referenced Books

Other References

Referenced Standards

B        HELLOCARMS The Next Generation of Home Equity Lending System Requirements Document

I          Table of Contents

II         Versioning

III        Glossary

000      Introduction

001      Informal Use Case

003      Scope

004      System Business Benefits

010      Functional System Requirements

020      Reliability System Requirements

030      Usability System Requirements

040      Efficiency System Requirements

050      Maintainability System Requirements

060      Portability System Requirements

A         Acknowledgement

C         Answers to Sample Questions

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset