Introduction to software testing / (Record no. 146)

MARC details
008 - FIXED-LENGTH DATA ELEMENTS--GENERAL INFORMATION
fixed length control field 090226s2008 nyua b 001 0 eng
010 ## - LIBRARY OF CONGRESS CONTROL NUMBER
LC control number 2007035077
020 ## - INTERNATIONAL STANDARD BOOK NUMBER
International Standard Book Number 0521880386
020 ## - INTERNATIONAL STANDARD BOOK NUMBER
International Standard Book Number 9780521880381
035 ## - SYSTEM CONTROL NUMBER
System control number (Sirsi) u1124
040 ## - CATALOGING SOURCE
Original cataloging agency EG-CaNU
Transcribing agency EG-CaNU
Modifying agency EG-CaNU
042 ## - AUTHENTICATION CODE
Authentication code ncode
082 00 - DEWEY DECIMAL CLASSIFICATION NUMBER
Classification number 004.24
Edition number 22
100 1# - MAIN ENTRY--PERSONAL NAME
Personal name Ammann, Paul,
Dates associated with a name 1961-
9 (RLIN) 512
245 10 - TITLE STATEMENT
Title Introduction to software testing /
Statement of responsibility, etc. Paul Ammann, Jeff Offutt.
260 ## - PUBLICATION, DISTRIBUTION, ETC.
Place of publication, distribution, etc. New York :
Name of publisher, distributor, etc. Cambridge University Press,
Date of publication, distribution, etc. 2008.
300 ## - PHYSICAL DESCRIPTION
Extent xxii, 322 p. :
Other physical details ill. ;
Dimensions 26 cm.
504 ## - BIBLIOGRAPHY, ETC. NOTE
Bibliography, etc. note Includes bibliographical references (p. 295-318) and index.
505 0# - FORMATTED CONTENTS NOTE
Formatted contents note Overview 1 Introduction 3 Activities of a Test Engineer 4 Testing Levels Based on Software Activity 5 Beizer's Testing Levels Based on Test Process Maturity 8 Automation of Test Activities 10 Software Testing Limitations and Terminology 11 Coverage Criteria for Testing 16 Infeasibility and Subsumption 20 Characteristics of a Good Coverage Criterion 20 Older Software Testing Terminology 21 Bibliographic Notes 22 Coverage Criteria 25 Graph Coverage 27 Overview 27 Graph Coverage Criteria 32 Structural Coverage Criteria 33 Data Flow Criteria 44 Subsumption Relationships among Graph Coverage Criteria 50 Graph Coverage for Source Code 52 Structural Graph Coverage for Source Code 52 Data Flow Graph Coverage for Source Code 54 Graph Coverage for Design Elements 65 Structural Graph Coverage for Design Elements 65 Data Flow Graph Coverage for Design Elements 67 Graph Coverage for Specifications 75 Testing Sequencing Constraints 75 Testing State Behavior of Software 77 Graph Coverage for Use Cases 87 Use Case Scenarios 90 Representing Graphs Algebraically 91 Reducing Graphs to Path Expressions 94 Applications of Path Expressions 96 Deriving Test
505 0# - FORMATTED CONTENTS NOTE
Formatted contents note Inputs 96 Counting Paths in a Flow Graph and Determining Max Path Length 97 Minimum Number of Paths to Reach All Edges 98 Complementary Operations Analysis 98 Bibliographic Notes 100 Logic Coverage 104 Overview: Logic Predicates and Clauses 104 Logic Expression Coverage Criteria 106 Active Clause Coverage 107 Inactive Clause Coverage 111 Infeasibility and Subsumption 112 Making a Clause Determine a Predicate 113 Finding Satisfying Values 115 Structural Logic Coverage of Programs 120 Predicate Transformation Issues 127 Specification-Based Logic Coverage 131 Logic Coverage of Finite State Machines 134 Disjunctive Normal Form Criteria 138 Bibliographic Notes 147 Input Space Partitioning 150 Input Domain Modeling
505 0# - FORMATTED CONTENTS NOTE
Formatted contents note 152 Interface-Based Input domain Modeling 153 Functionality-Based Input Domain Modeling 154 Identifying Characteristics 154 Choosing Blocks and Values 156 Using More than One Input Domain Model 158 Checking the Input Domain Model 158 Combination Strategies Criteria 160 Constraints among Partitions 165 Bibliographic Notes 166 Syntax-Based Testing 170 Syntax-Based Coverage Criteria 170 BNF Coverage Criteria 170 Mutation Testing 173 Program-Based Grammars 176 BNF Grammars for Languages 176 Program-Based Mutation 176 Integration and Object-Oriented Testing 191 BNF Integration Testing 192 Integration Mutation 192 Specification-Based Grammars 197 BNF Grammars 198 Specification-Based Mutation 198 Input Space Grammars 201 BNF Grammars 201 Mutation for Input Grammars 204 Bibliographic Notes 210 Applying Criteria in Practice 213 Practical Considerations 215 Regression Testing 215 Integration and Testing 217 Stubs and Drivers 218 Class Integration Test Order 218 Test Process
505 ## - FORMATTED CONTENTS NOTE
Formatted contents note 219 Requirements Analysis and Specification 220 System and Software Design 221 Intermediate Design 222 Detailed Design 223 Implementation 223 Integration 224 System Deployment 224 Operation and Maintenance 224 Summary 225 Test Plans 225 Identifying Correct Outputs 230 Direct Verification of Outputs 230 Redundant Computations 231 Consistency Checks 231 Data Redundancy 232 Bibliographic Notes 233 Engineering Criteria for Technologies 235 Testing Object-Oriented Software
505 0# - FORMATTED CONTENTS NOTE
Formatted contents note 236 Unique Issues with Testing OO Software 237 Types of Object-Oriented Faults 237 Testing Web Applications and Web Services 256 Testing Static Hyper Text Web Sites 257 Testing Dynamic Web Applications 257 Testing Web Services 260 Testing Graphical User Interfaces 260 Testing GUIs 261 Real-Time Software and Embedded Software 262 Bibliographic Notes 265 Building Testing Tools 268 Instrumentation for Graph and Logical Expression Criteria 268 Node and Edge Coverage 268 Data Flow Coverage 271 Logic Coverage 272 Building Mutation Testing Tools 272 The Interpretation Approach 274 The Separate Compilation Approach 274 The Schema-Based Approach 275 Using Java Reflection 276 Implementing a Modern Mutation System 277 Bibliographic Notes 277 Challenges in Testing Software 280 Testing for Emergent Properties: Safety and Security 280 Classes of Test Cases for Emergent Properties 283 Software Testability 284 Testability for Common Technologies 285 Test Criteria and the Future of Software Testing 286 Going Forward with Testing Research 288 Bibliographic Notes 290 List of Criteria 293 Bibliography 295 Index 319
520 ## - SUMMARY, ETC.
Summary, etc. Extensively class tested, this text takes an innovative approach to explaining the process of software testing: it defines testing as the process of applying a few well-defined, general-purpose test criteria to a structure or model of the software. The structure of the text directly reflects the pedagogical approach and incorporates the latest innovations in testing, including techniques to test modern types of software such as OO, web applications, and embedded software.
596 ## -
-- 1
630 00 - SUBJECT ADDED ENTRY--UNIFORM TITLE
Uniform title CIT.
9 (RLIN) 14
650 #0 - SUBJECT ADDED ENTRY--TOPICAL TERM
Topical term or geographic name entry element Computer software
General subdivision Testing.
9 (RLIN) 513
700 1# - ADDED ENTRY--PERSONAL NAME
Personal name Offutt, Jeff,
Dates associated with a name 1961-
9 (RLIN) 514
Holdings
Withdrawn status Lost status Source of classification or shelving scheme Damaged status Not for loan Home library Current library Shelving location Date acquired Source of acquisition Total Checkouts Full call number Barcode Date last seen Copy number Price effective from Koha item type
    Dewey Decimal Classification     Main library Main library General Stacks 01/26/2020 BAC_P   004.24 / AM.I 2008 001894 11/24/2019 1 11/24/2019 Books