书籍详情
软件测试基础(英文版)
作者:(美)阿曼,奥法特 著
出版社:机械工业出版社
出版时间:2009-10-01
ISBN:9787111282464
定价:¥42.00
购买这本书可以去
内容简介
Introduction to Software Testing(ISBN 978-0-521-88038-1)by Paul Ammann and Jeff Offuttfirst published by Cambridge University Press in 2008.All rights reserved.This reprint edition for the PeopleS Republic of China is published by arrangement with thePress Syndicate of the University of Cambridge,Cambridge,United Kingdom.◎Cambridge University Press&China Machine Press in 2009.This edition is for sale in the mainland of China only,excluding Hong Kong SAR,Macao SARand Taiwan,and may not be bought for export therefrom.《软件测试基础(英文版)》由机械工业出版社和剑桥大学出版社合作出版。
作者简介
Paul Ammann,在美国维吉尼亚大学获得计算机科学博士学位,现为乔治·梅森大学软件工程副教授。他于2007年获得乔治·梅森大学Volgenau信息技术与工程学院的杰出教学奖。Jeff Offutt,在乔治亚理工学院获得计算机博士学位,现为乔治·梅森大学软件工程教授。他是((Journal of Software Testing,Verification and Reliability))的主编,是IEEE软件测试、验证和确认国际会议指导委员会主席,还是许多期刊的编委。他于2003年获得乔治·梅森大学Volgenau信息技术与工程学院的优秀教师奖。
目录
Preface
Part1 Overview
1 Introduction
1.1 ActivitiesofaTestEngineer
1.1.1 TestingLevelsBasedonSoftwareActivity
1.1.2 BeizersTestingLevelsBasedonTestProcessMaturity
1.1.3 AutomationofTestActivities
1.2 SoftwareTestingLimitationsandTerminology
1.3 CoverageCriteriaforTesting
1.3.1 InfeasibilityandSubsumption
1.3.2 CharacteristicsofaGoodCoverageCriterion
1.4 OlderSoftwareTestingTerminology
1.5 BibliographicNotes
Part2 CoverageCriteria
2 GraphCoverage
2.1 Overview
2.2 GraphCoverageCriteria
2.2.1 StructuralCoverageCriteria
2.2.2 DataFlowCriteria
2.2.3 SubsumptionRelationshipsamongGraphCoverageCriteria
2.3 GraphCoverageforSourceCode
2.3.1 StructuralGraphCoverageforSourceCode
2.3.2 DataFlowGraphCoverageforSourceCode
2.4 GraphCoverageforDesignElements
2.4.1 StructuralGraphCoverageforDesignElements
2.4.2 DataFlowGraphCoverageforDesignElements
2.5 GraphCoverageforSpecifications
2.5.1 TestingSequencingConstraints
2.5.2 TestingStateBehaviorofSoftware
2.6 GraphCoverageforUseCases
2.6.1 UseCaseScenarios
2.7 RepresentingGraphsAlgebraically
2.7.1 ReducingGraphstoPathExpressions
2.7.2 ApplicationsofPathExpressions
2.7.3 DerivingTestInputs
2.7.4 CountingPathsinaFlowGraphandDeterminingMaxPathLength
2.7.5 MinimumNumberofPathstoReachAllEdges
2.7.6 ComplementaryOperationsAnalysis
2.8 BibliographicNotes
3 LogicCoverage
3.1 Overview:LogicPredicatesandClauses
3.2 LogicExpressionCoverageCriteria
3.2.1 ActiveClauseCoverage
3.2.2 InactiveClauseCoverage
3.2.3 InfeasibilityandSubsumption
3.2.4 MakingaClauseDetermineaPredicate
3.2.5 FindingSatisfyingValues
3.3 StructuralLogicCoverageofPrograms
3.3.1 PredicateTransformationIssues
3.4 Specification-BasedLogicCoverage
3.5 LogicCoverageofFiniteStateMachines
3.6 DisjunctiveNormalFormCriteria
3.7 BibliographicNotes
4 InputSpacePartitioning
4.1 InputDomainModeling
4.1.1 Interface-BasedInputDomainModeling
4.1.2 Functionality-BasedInputDomainModeling
4.1.3 IdentifyingCharacteristics
4.1.4 ChoosingBlocksandValues
4.1.5 UsingMorethanOneInputDomainModel
4.1.6 CheckingtheInputDomainModel
4.2 CombinationStrategiesCriteria
4.3 ConstraintsamongPartitions
4.4 BibliographicNotes
5 Syntax-Based Testing
5.1 Syntax.Based Coverage Criteria
5.1.1 BNF Coverage Criteria
5.1.2 Mutation Testing
5.2 Program.Based Grammars
5.2.1 BNF Grammars for Languages
5.2.2 Program.Based Mutation
5.3 Integration and Object-Oriented Testing
5.3.1 BNF Integration Testing
5.3.2 Integration Mutation
5.4 Specification.Based Grammars
5.4.1 BNF Grammars
5.4.2 Specification.Based Mutation
5.5 Input Space Grammars
5.5.1 BNF Grammars
5.5.2 Mutation for Input Grammars
5.6 Bibliographic Notes
Part 3 Applying Criteria In Practice
6 PractlcaI COnsIderatIOnS
6.1 Regression Testing
6.2 Integration and Testing
6.2.1 Stubs and Drivers
6.2.2 Class Integration Test Order
6.3 Test Process
6.3.1 Requirements Analysis and Specification
6.3.2 System and Software Design
6.3.3 Intermediate Design
6.3.4 Detailed Design
6.3.5 Implementation
6.3.6 Integration
6.3.7 System Deployment
6.3.8 Operation and Maintenance
6.3.9 Summary
6.4 Test Plans
6.5 Identifying Correct Outputs
6.5.1 Direct Verification of Outputs
6.5.2 Redundant Computations
6.5.3 Consistency Checks
6.5.4 Data Redundancy
6.6 Bibliographic Notes
7 Engineering Criteria for Technologies
7.1 Testing Object.Oriented Software
7.1.1 Unique Issues with Testing OO Software
7.1.2 Types of Obiect-Oriented Faults
7.2 Testing Web Applications and Web Services
7.2.1 Testing Static Hyper Text Web Sites
7.2.2 Testing Dynamic Web Applications
7.2.3 Testing Web Services
7.3 Testing Graphical User Interfaces
7.3.1 Testing GUIs
7.4 Real.Time Software and Embedded Software
7.5 Bibliographic Notes
8 Building Testing Tools
8.1 Instrumentation for Graph and Logical Expression Criteria
8.1.1 Node and Edge Coverage
8.1.2 Data Flow Coverage
8.1.3 Logic Coverage
8.2 Building Mutation Testing Tools
8.2.1 111e Interpretation Approach
8.2.2 T]he Separate Compilation Approach
8.2.3 The Schema.Based Approach
8.2.4 Using Java Refle~ion
8.2.5 Implementing a Modem Mutation System
8.3 Bibliographic Notes
9 Challenges In Testing Software
9.1 Testing for Emergent Properties:Safety and Security
9.1.1 Classes of Test Cases for Emergent Properties
9.2 Software Testability
9.2.1 Testability for Common Technologies
9.3 Test Criteria and the FUture of Software Testing
9.3.1 Going Forward with Testing Research
9.4 Bibliographic Notes
Listofcriteria
Bibliography
Index
Part1 Overview
1 Introduction
1.1 ActivitiesofaTestEngineer
1.1.1 TestingLevelsBasedonSoftwareActivity
1.1.2 BeizersTestingLevelsBasedonTestProcessMaturity
1.1.3 AutomationofTestActivities
1.2 SoftwareTestingLimitationsandTerminology
1.3 CoverageCriteriaforTesting
1.3.1 InfeasibilityandSubsumption
1.3.2 CharacteristicsofaGoodCoverageCriterion
1.4 OlderSoftwareTestingTerminology
1.5 BibliographicNotes
Part2 CoverageCriteria
2 GraphCoverage
2.1 Overview
2.2 GraphCoverageCriteria
2.2.1 StructuralCoverageCriteria
2.2.2 DataFlowCriteria
2.2.3 SubsumptionRelationshipsamongGraphCoverageCriteria
2.3 GraphCoverageforSourceCode
2.3.1 StructuralGraphCoverageforSourceCode
2.3.2 DataFlowGraphCoverageforSourceCode
2.4 GraphCoverageforDesignElements
2.4.1 StructuralGraphCoverageforDesignElements
2.4.2 DataFlowGraphCoverageforDesignElements
2.5 GraphCoverageforSpecifications
2.5.1 TestingSequencingConstraints
2.5.2 TestingStateBehaviorofSoftware
2.6 GraphCoverageforUseCases
2.6.1 UseCaseScenarios
2.7 RepresentingGraphsAlgebraically
2.7.1 ReducingGraphstoPathExpressions
2.7.2 ApplicationsofPathExpressions
2.7.3 DerivingTestInputs
2.7.4 CountingPathsinaFlowGraphandDeterminingMaxPathLength
2.7.5 MinimumNumberofPathstoReachAllEdges
2.7.6 ComplementaryOperationsAnalysis
2.8 BibliographicNotes
3 LogicCoverage
3.1 Overview:LogicPredicatesandClauses
3.2 LogicExpressionCoverageCriteria
3.2.1 ActiveClauseCoverage
3.2.2 InactiveClauseCoverage
3.2.3 InfeasibilityandSubsumption
3.2.4 MakingaClauseDetermineaPredicate
3.2.5 FindingSatisfyingValues
3.3 StructuralLogicCoverageofPrograms
3.3.1 PredicateTransformationIssues
3.4 Specification-BasedLogicCoverage
3.5 LogicCoverageofFiniteStateMachines
3.6 DisjunctiveNormalFormCriteria
3.7 BibliographicNotes
4 InputSpacePartitioning
4.1 InputDomainModeling
4.1.1 Interface-BasedInputDomainModeling
4.1.2 Functionality-BasedInputDomainModeling
4.1.3 IdentifyingCharacteristics
4.1.4 ChoosingBlocksandValues
4.1.5 UsingMorethanOneInputDomainModel
4.1.6 CheckingtheInputDomainModel
4.2 CombinationStrategiesCriteria
4.3 ConstraintsamongPartitions
4.4 BibliographicNotes
5 Syntax-Based Testing
5.1 Syntax.Based Coverage Criteria
5.1.1 BNF Coverage Criteria
5.1.2 Mutation Testing
5.2 Program.Based Grammars
5.2.1 BNF Grammars for Languages
5.2.2 Program.Based Mutation
5.3 Integration and Object-Oriented Testing
5.3.1 BNF Integration Testing
5.3.2 Integration Mutation
5.4 Specification.Based Grammars
5.4.1 BNF Grammars
5.4.2 Specification.Based Mutation
5.5 Input Space Grammars
5.5.1 BNF Grammars
5.5.2 Mutation for Input Grammars
5.6 Bibliographic Notes
Part 3 Applying Criteria In Practice
6 PractlcaI COnsIderatIOnS
6.1 Regression Testing
6.2 Integration and Testing
6.2.1 Stubs and Drivers
6.2.2 Class Integration Test Order
6.3 Test Process
6.3.1 Requirements Analysis and Specification
6.3.2 System and Software Design
6.3.3 Intermediate Design
6.3.4 Detailed Design
6.3.5 Implementation
6.3.6 Integration
6.3.7 System Deployment
6.3.8 Operation and Maintenance
6.3.9 Summary
6.4 Test Plans
6.5 Identifying Correct Outputs
6.5.1 Direct Verification of Outputs
6.5.2 Redundant Computations
6.5.3 Consistency Checks
6.5.4 Data Redundancy
6.6 Bibliographic Notes
7 Engineering Criteria for Technologies
7.1 Testing Object.Oriented Software
7.1.1 Unique Issues with Testing OO Software
7.1.2 Types of Obiect-Oriented Faults
7.2 Testing Web Applications and Web Services
7.2.1 Testing Static Hyper Text Web Sites
7.2.2 Testing Dynamic Web Applications
7.2.3 Testing Web Services
7.3 Testing Graphical User Interfaces
7.3.1 Testing GUIs
7.4 Real.Time Software and Embedded Software
7.5 Bibliographic Notes
8 Building Testing Tools
8.1 Instrumentation for Graph and Logical Expression Criteria
8.1.1 Node and Edge Coverage
8.1.2 Data Flow Coverage
8.1.3 Logic Coverage
8.2 Building Mutation Testing Tools
8.2.1 111e Interpretation Approach
8.2.2 T]he Separate Compilation Approach
8.2.3 The Schema.Based Approach
8.2.4 Using Java Refle~ion
8.2.5 Implementing a Modem Mutation System
8.3 Bibliographic Notes
9 Challenges In Testing Software
9.1 Testing for Emergent Properties:Safety and Security
9.1.1 Classes of Test Cases for Emergent Properties
9.2 Software Testability
9.2.1 Testability for Common Technologies
9.3 Test Criteria and the FUture of Software Testing
9.3.1 Going Forward with Testing Research
9.4 Bibliographic Notes
Listofcriteria
Bibliography
Index
猜您喜欢