Software Testing: A Craftsman's Approach

Software Testing: A Craftsman's Approach

Hardback

By (author) Paul C. Jorgensen

$86.46
List price $99.96
You save $13.50 13% off

Free delivery worldwide
Available
Dispatched in 2 business days
When will my order arrive?

  • Publisher: Auerbach Publishers Inc.
  • Format: Hardback | 494 pages
  • Dimensions: 178mm x 254mm x 30mm | 1,024g
  • Publication date: 29 November 2013
  • Publication City/Country: London
  • ISBN 10: 1466560681
  • ISBN 13: 9781466560680
  • Edition: 4, Revised
  • Edition statement: 4th Revised edition
  • Illustrations note: 181 black & white illustrations, 165 black & white tables
  • Sales rank: 867,177

Product description

This updated and reorganized fourth edition of Software Testing: A Craftsman's Approach applies the strong mathematics content of previous editions to a coherent treatment of Model-Based Testing for both code-based (structural) and specification-based (functional) testing. These techniques are extended from the usual unit testing discussions to full coverage of less understood levels integration and system testing. The Fourth Edition: Emphasizes technical inspections and is supplemented by an appendix with a full package of documents required for a sample Use Case technical inspection Introduces an innovative approach that merges the Event-Driven Petri Nets from the earlier editions with the "Swim Lane" concept from the Unified Modeling Language (UML) that permits model-based testing for four levels of interaction among constituents in a System of Systems Introduces model-based development and provides an explanation of how to conduct testing within model-based development environments Presents a new section on methods for testing software in an Agile programming environment Explores test-driven development, reexamines all-pairs testing, and explains the four contexts of software testing Thoroughly revised and updated, Software Testing: A Craftsman's Approach, Fourth Edition is sure to become a standard reference for those who need to stay up to date with evolving technologies in software testing. Carrying on the tradition of previous editions, it will continue to serve as a valuable reference for software testers, developers, and engineers.

Other people who viewed this bought:

Showing items 1 to 10 of 10

Other books in this category

Showing items 1 to 11 of 11
Categories:

Table of contents

Section I: A MATHEMATICAL CONTEXT A Perspective on Testing Basic Definitions Test Cases Insights from a Venn Diagram Identifying Test Cases Fault Taxonomies Levels of Testing Examples Generalized Pseudocode The Triangle Problem The NextDate Function The Commission Problem The SATM System The Currency Converter Saturn Windshield Wiper Controller Garage Door Opener Discrete Math for Testers Set Theory Functions Relations Propositional Logic Probability Theory Graph Theory for Testers Graphs Directed Graphs Graphs for Testing Section II: UNIT TESTING Boundary Value Testing Normal Boundary Value Testing Robust Boundary Value Testing Worst-Case Boundary Value Testing Special Value Testing Examples Random Testing Guidelines for Boundary Value Testing Equivalence Class Testing Equivalence Classes Traditional Equivalence Class Testing Improved Equivalence Class Testing Equivalence Class Test Cases for the Triangle Problem Equivalence Class Test Cases for the NextDate Function Equivalence Class Test Cases for the Commission Problem Edge Testing Guidelines and Observations Decision Table-Based Testing Decision Tables Decision Table Techniques Test Cases for the Triangle Problem Test Cases for the NextDate Function Test Cases for the Commission Problem Cause-and-Effect Graphing Guidelines and Observations Path Testing Program Graphs DD-Paths Test Coverage Metrics Basis Path Testing Guidelines and Observations Data Flow Testing Define/Use Testing Slice-Based Testing Program Slicing Tools Retrospective on Unit Testing The Test Method Pendulum Traversing the Pendulum Evaluating Test Methods Insurance Premium Case Study Guidelines Section III: BEYOND UNIT TESTING Life Cycle-Based Testing Traditional Waterfall Testing Testing in Iterative Life Cycles Agile Testing Agile Model-Driven Development Model-Based Testing Testing Based on Models Appropriate Models Commercial Tool Support for Model-Based Testing Integration Testing Decomposition-Based Integration Call Graph-Based Integration Path-Based Integration Example: integrationNextDate Conclusions and Recommendations System Testing Threads Basis Concepts for Requirements Specification Model-Based Threads Use Case-Based Threads Long versus Short Use Cases How Many Use Cases? Coverage Metrics for System Testing Supplemental Approaches to System Testing Nonfunctional System Testing Atomic System Function Testing Example Object-Oriented Testing Issues in Testing Object-Oriented Software Example: ooNextDate Object-Oriented Unit Testing Object-Oriented Integration Testing Object-Oriented System Testing Software Complexity Unit-Level Complexity Integration-Level Complexity Software Complexity Example Object-Oriented Complexity System-Level Complexity Model-Based Testing for Systems of Systems Characteristics of Systems of Systems Sample Systems of Systems Software Engineering for Systems of Systems Communication Primitives for Systems of Systems Effect of Systems of Systems Levels on Prompts Exploratory Testing Exploratory Testing Explored Exploring a Familiar Example Observations and Conclusions Test-Driven Development Test-Then-Code Cycles Automated Test Execution (Testing Frameworks) Java and JUnit Example Remaining Questions Pros, Cons, and Open Questions of TDD Retrospective on MDD versus TDD A Closer Look at All Pairs Testing The All Pairs Technique A Closer Look at the NIST Study Appropriate Applications for All Pairs Testing Recommendations for All Pairs Testing Evaluating Test Cases Mutation Testing Fuzzing Fishing Creel Counts and Fault Insertion Software Technical Reviews Economics of Software Reviews Roles in a Review Types of Reviews Contents of an Inspection Packet An Industrial-Strength Inspection Process Effective Review Culture Inspection Case Study Epilogue: Software Testing Excellence Craftsmanship Best Practices of Software Testing My Top 10 Best Practices for Software Testing Excellence Mapping Best Practices to Diverse Projects References Appendix: Complete Technical Inspection Packet