Implementing Automated Software Testing: How to Save Time and Lower Costs While Raising Quality

Paperback
from $0.00

Author: Elfriede Dustin

ISBN-10: 0321580516

ISBN-13: 9780321580511

Category: Quality Control & Testing - Programming

Search in google:

“This book fills a huge gap in our knowledge of software testing. It does an excellent job describing how test automation differs from other test activities, and clearly lays out what kind of skills and knowledge are needed to automate tests. The book is essential reading for students of testing and a bible for practitioners.”–Jeff Offutt, Professor of Software Engineering, George Mason University“This new book naturally expands upon its predecessor, Automated Software Testing, and is the perfect reference for software practitioners applying automated software testing to their development efforts. Mandatory reading for software testing professionals!”–Jeff Rashka, PMP, Coauthor of Automated Software Testing and Quality Web SystemsTesting accounts for an increasingly large percentage of the time and cost of new software development. Using automated software testing (AST), developers and software testers can optimize the software testing lifecycle and thus reduce cost. As technologies and development grow increasingly complex, AST becomes even more indispensable. This book builds on some of the proven practices and the automated testing lifecycle methodology (ATLM) described in Automated Software Testing and provides a renewed practical, start-to-finish guide to implementing AST successfully.In Implementing Automated Software Testing, three leading experts explain AST in detail, systematically reviewing its components, capabilities, and limitations. Drawing on their experience deploying AST in both defense and commercial industry, they walk you through the entireimplementation process–identifying best practices, crucial success factors, and key pitfalls along with solutions for avoiding them. You will learn how to: Make a realistic business case for AST, and use it to drive your initiative Clarify your testing requirements and develop an automation strategy that reflects them Build efficient test environments and choose the right automation tools and techniques for your environment Use proven metrics to continuously track your progress and adjust accordinglyWhether you’re a test professional, QA specialist, project manager, or developer, this book can help you bring unprecedented efficiency to testing–and then use AST to improve your entire development lifecycle.

Foreword by Admiral Edmund P. Giambastiani, Jr. xvForeword by Dr. William Nylin, Jr. xviiPreface xixAcknowledgments xxiiiAbout the Authors xxvPart I: What Is Automated Software Testing and Why Should We Automate? 1Chapter 1: What Is Effective Automated Software Testing (AST)? 31.1 Automated Software Testing Definition 41.2 Automated Software Testing Recipes 51.3 Advances in AST Technologies 81.4 Automating Various Software Testing Types 111.5 Providing AST-Based Production Support 161.6 Automating Standards Assessments 18Summary 20Notes 21Chapter 2: Why Automate? 232.1 The Challenges of Testing Software Today 242.2 Reducing the Time and Cost of Software Testing 262.3 Impacting Software Quality 382.4 Improvements to Your Software Test Program 42Summary 49Notes 50Chapter 3: The Business Case 513.1 Definition of the Business Case 513.2 Identifying the Business Needs 533.3 Justifying Automation in Terms of Cost and Benefits 553.4 Risks 653.5 Other Considerations 67Summary 68Notes 68Chapter 4: Why Automated Software Testing Fails and Pitfalls to Avoid 694.1 R&D Does Not Generally Focus on Automated or Manual Testing Efforts 714.2 AST Myths and Realities 744.3 Lack of Software Development Considerations for AST 834.4 The Forest for the Trees–Not Knowing Which Tool to Pick 914.5 Lack of Automation Standards across Tool Vendors 944.6 Lack of Business Case 97Summary 97Notes 97Part II: How to Automate: Top Six Keys for Automation Payoff99Chapter 5: Key 1: Know Your Requirements 1015.1 Understand the AST Support Requirements 1025.2 Additional Information in Support of AST Requirements 1145.3 When Information Is Not Available 1165.4 Start Implementing Your Requirements Traceability Matrix (RTM) 124Summary 128Notes 128Chapter 6: Key 2: Develop the Automated Test Strategy 1296.1 The AST Strategy Document 1316.2 Scope and Automated Test Objectives 1326.3 Identify the Approach 1396.4 Automated Software Test Framework (ASTF) 1466.5 AST Environment/Configuration 1506.6 Automating the RTM 1596.7 Automated Defect Tracking 164Summary 164Notes 165Chapter 7: Key 3: Test the Automated Software Test Framework (ASTF) 1677.1 Verify That the ASTF Meets Specified Requirements and That Features Behave As Expected 1697.2 Peer-Review All ASTF-Related Artifacts, Including Design, Development, and Test Cases 1707.3 Verify Requirements and Coverage 1827.4 Hold a Customer Review 183Summary 184Notes 184Chapter 8: Key 4: Continuously Track Progress–and Adjust Accordingly 1878.1 AST Program Tracking and Defect Prevention 1888.2 AST Metrics 1928.3 Root Cause Analysis 205Summary 206Notes 207Chapter 9: Key 5: Implement AST Processes 2099.1 AST Phases and Milestones 2119.2 AST Phase 1: Requirements Gathering–Analyze Automated Testing Needs 2129.3 AST Phase 2: Test Case Design and Development 2159.4 AST Phase 3: Automated Software Testing Framework (ASTF) and Test Script Development 2169.5 AST Phase 4: Automated Test Execution and Results Reporting 2179.6 AST Phase 5: Program Review and Assessment 2189.7 Virtual Quality Gates 2199.8 Process Measurement 220Summary 221Notes 222Chapter 10: Key 6: Put the Right People on the Project–Know the Skill Sets Required 22310.1 Program Management 23210.2 Systems Engineering 23610.3 Software Development 23910.4 Configuration Management 24210.5 Quality Assurance 24410.6 Subject Matter Experts (SMEs) 246Summary 247Notes 248Appendices 249Appendix A: Process Checklist 251A.1 AST Phase 1: Requirements Gathering–Analyze Automated Testing Needs 252A.2 AST Phase 2: Test Case Design and Development 253A.3 AST Phase 3: Automated Software Testing Framework (ASTF) and Test Script Development 254A.4 AST Phase 4: Automated Test Execution and Results Reporting 255A.5 AST Phase 5: Program Review and Assessment 256Appendix B: AST Applied to Various Testing Types 257B.1 Security Testing 257B.2 Soak Testing 261B.3 Concurrency Testing 263B.4 Performance Testing 265B.5 Code Coverage Testing 269B.6 Unit Testing 271Notes 274Appendix C: The Right Tool for the Job 275C.1 Requirements Management (RM) 276C.2 Unit Testing Frameworks–Example Evaluation 281C.3 Configuration Management–Example Evaluation 284C.4 Defect Tracking–Example Evaluation 292C.5 Security Testing 299C.6 Automated Software Testing Framework (ASTF)–Example Evaluation 306C.7 Other STL Support Tools 316Notes 319Appendix D: Case Study: An Automated Software Testing Framework (ASTF) Example 321D.1 Key Design Features 323D.2 Test Manager 325D.3 More on Automated Test Case and Test Code Generation 326D.4 Results Reporting 328D.5 Automated Defect Reporting 328Notes 329Contributing Authors 331Index 333