100 Best Software Testing Books of All Time

We've researched and ranked the best software testing books in the world, based on recommendations from world experts, sales data, and millions of reader ratings. Learn more

Featuring recommendations from Nassim Nicholas Taleb, Marty Cagan, Jeff Atwood, and 14 other experts.
1
Even bad code can function. But if code isn t clean, it can bring a development organization to its knees. Every year, countless hours and significant resources are lost because of poorly written code. But it doesn t have to be that way.
Noted software expert Robert C. Martin presents a revolutionary paradigm with Clean Code: A Handbook of Agile Software Craftsmanship . Martin has teamed up with his colleagues from Object Mentor to distill their best agile practice of cleaning code on the fly into a book that will instill within you the values of a software craftsman and...
more
Recommended by Ana Bell, and 1 others.

Ana BellThis book is going to show you how to write code that is readable by yourself in the future, or by somebody else. You can sit on the couch and read it; you don’t need to code. You can actually enjoy it if you don’t know how to program at all. (Source)

See more recommendations for this book...

2
Great software testing teams aren't born, they're made - through a lot of hard work and persuasive communication. Along the way, there is an abundance of traps that one can fall into, which can derail the best-laid plans and put your projects behind schedule.

Cem Kaner, James Bach, and Bret Pettichord know this all too well. Between them, they have over fifty years of testing experience, and know what it takes for successful testing. In this groundbreaking new book, they have compiled 293 pieces of experience-tested advice for you to put to work in your testing projects. They...
more

See more recommendations for this book...

3

The Pragmatic Programmer

From Journeyman to Master

-- Ward Cunningham Straight from the programming trenches, The Pragmatic Programmer cuts through the increasing specialization and technicalities of modern software development to examine the core process--taking a requirement and producing working, maintainable code that delights its users. It covers topics ranging from personal responsibility and career development to architectural techniques for keeping your code flexible and easy to adapt and reuse. Read this book, and youll learn how to *Fight software rot; *Avoid the trap of duplicating knowledge; *Write flexible, dynamic, and adaptable... more
Recommended by Jeff Atwood, Hadley Wickham, and 3 others.

Hadley WickhamThis book is about the craft of software development, and thinking about how to produce good code. (Source)

See more recommendations for this book...

4
Testing is a key component of agile development. The widespread adoption of agile methods has brought the need for effective testing into the limelight, and agile projects have transformed the role of testers. Much of a tester's function, however, remains largely misunderstood. What is the true role of a tester? Do agile teams actually need members with QA backgrounds? What does it really mean to be an "agile tester?"

Two of the industry's most experienced agile testing practitioners and consultants, Lisa Crispin and Janet Gregory, have teamed up to bring you the definitive answers...
more

See more recommendations for this book...

5

Testing Computer Software

This book will teach you how to test computer software under real-world conditions. The authors have all been test managers and software development managers at well-known Silicon Valley software companies. Successful consumer software companies have learned how to produce high-quality products under tight time and budget constraints. The book explains the testing side of that success.

Who this book is for:
* Testers and Test Managers
* Project Managers-Understand the timeline, depth of investigation, and quality of communication to hold testers accountable for.
*...
more

See more recommendations for this book...

6
Uncover surprises, risks, and potentially serious bugs with exploratory testing. Rather than designing all tests in advance, explorers design and execute small, rapid experiments. In this book, you'll learn how to analyze software to discover key points of vulnerability, how to design experiments on the fly, how to hone your observation skills, and how to focus your efforts.

You'll start by crafting charters to guide your exploration. Then you'll vary interactions, sequences, data, timing, and configurations. You'll incorporate analysis techniques such as state modeling, data...
more

See more recommendations for this book...

8
Follows two TDD projects from start to finish, illustrating techniques programmers can use to increase the quality of their work. The examples are followed by references to the featured TDD patterns and refactorings. This book emphasises on agile methods and fast development strategies. less

See more recommendations for this book...

9

Software Testing

Software testing is one of the invisible jobs in the software industry. Everyone has heard of computer programmers but few people realize there are nearly as many people behind the scenes with job titles such as Software Tester, Software Quality Assurance Engineer, Software Test Engineer, and Software Test Technician. Microsoft alone hires hundreds of people for these positions each year. There are also many companies whose sole purpose is providing software test consulting and software testing services. The first edition of Software Testing was published in November 2000. Although the... more

See more recommendations for this book...

10
Foreword by Kent Beck "The authors of this book have led a revolution in the craft of programming by controlling the environment in which software grows." --Ward Cunningham "At last, a book suffused with code that exposes the deep symbiosis between TDD and OOD. This one's a keeper." --Robert C. Martin "If you want to be an expert in the state of the art in TDD, you need to understand the ideas in this book."--Michael Feathers Test-Driven Development (TDD) is now an established technique for delivering better software faster. TDD is based on a simple... more

See more recommendations for this book...

Don't have time to read the top Software Testing books of all time? Read Shortform summaries.

Shortform summaries help you learn 10x faster by:

  • Being comprehensive: you learn the most important points in the book
  • Cutting out the fluff: you focus your time on what's important to know
  • Interactive exercises: apply the book's ideas to your own life with our educators' guidance.
11
Fully Revised and Updated-Includes New Refactorings and Code Examples "Any fool can write code that a computer can understand. Good programmers write code that humans can understand."
--M. Fowler (1999) For more than twenty years, experienced programmers worldwide have relied on Martin Fowler's Refactoring to improve the design of existing code and to enhance software maintainability, as well as to make existing code easier to understand.
This eagerly awaited new edition has been fully updated to reflect crucial changes in the programming landscape. ...
more
Recommended by David Heinemeier Hansson, and 1 others.

David Heinemeier HanssonThis is next on my list of technical books to read! Refactoring is one of two programming books that I’ve read multiple times (the other is Smalltalk Best Practice Patterns), and I’m due for another reading. What perfect time then to dive into Martin Fowler’s long anticipated 2nd edition, now using JavaScript rather than Java for the code examples. Like the stoic books, I read Refactoring and... (Source)

See more recommendations for this book...

12
This edition Covers CTFL Syllabus 2018 V3.1. This book is written specifically for all the candidates who are planning to self-study for the ISTQB foundation certification exam (CTFL) based on the new 2018 V3.1 syllabus. This book provides a thorough and in-depth coverage of all the syllabus and provides key review on exam topics. This book adopts a practical and hands-on approach and is enhanced with many useful learning aids to help you pass the ISTQB Foundation Level exam.

This book is divided into six chapters, each chapter has sections which maps directly to each learning...
more

See more recommendations for this book...

14

How Google Tests Software

2012 Jolt Award finalist! Pioneering the Future of Software Test Do you need to get it right, too? Then, learn from Google. Legendary testing expert James Whittaker, until recently a Google testing leader, and two top Google experts reveal exactly how Google tests software, offering brand-new best practices you can use even if you're not quite Google's size...yet! Breakthrough Techniques You Can Actually Use Discover 100% practical, amazingly scalable techniques for analyzing risk and planning tests...thinking like real users...implementing exploratory, black box, white... more

See more recommendations for this book...

16

Working Effectively with Legacy Code

Get more out of your legacy systems, more performance, functionality, reliability, and manageability.Is your code easy to change? Can you get nearly instantaneous feedback when you do change it? Do you understand it? If the answer to any of these questions is no, you have legacy code, and it is draining time and money away from your development efforts.

In this book, Michael Feathers offers start-to-finish strategies for working more effectively with large, untested legacy code bases. This book draws on material Michael created for his renowned Object Mentor seminars, techniques...
more

See more recommendations for this book...

17
Winner of the 2011 Jolt Excellence Award!

Getting software released to users is often a painful, risky, and time-consuming process. This groundbreaking new book sets out the principles and technical practices that enable rapid, incremental delivery of high quality, valuable new functionality to users. Through automation of the build, deployment, and testing process, and improved collaboration between developers, testers, and operations, delivery teams can get changes released in a matter of hours-- sometimes even minutes-no matter what the size of a project or the...
more

See more recommendations for this book...

18

Foundations of Software Testing ISTQB Certification

Now in its third edition, Foundations of Software Testing: ISTQB Certification is the essential guide to software testing and to the ISTQB Foundation qualification. Completely updated to comprehensively reflect the most recent changes to the ISTQB Foundation Syllabus, the book adopts a practical, hands-on approach, covering the fundamental topics that every system and software tester should know. The authors are themselves developers of the ISTQB syllabus and are highly respected international authorities, teachers and authors within the field of software testing. less

See more recommendations for this book...

19
Many forces affect software today: larger datasets, geographical disparities, complex company structures, and the growing need to be fast and nimble in the face of change.

Proven approaches such as service-oriented and event-driven architectures are joined by newer techniques such as microservices, reactive architectures, DevOps, and stream processing. Many of these patterns are successful by themselves, but as this practical ebook demonstrates, they provide a more holistic and compelling approach when applied together.

Author Ben Stopford explains how service-based...
more

See more recommendations for this book...

20
How to Find and Fix the Killer Software Bugs that Evade Conventional Testing

In Exploratory Software Testing, renowned software testing expert James Whittaker reveals the real causes of today's most serious, well-hidden software bugs--and introduces powerful new "exploratory" techniques for finding and correcting them.

Drawing on nearly two decades of experience working at the cutting edge of testing with Google, Microsoft, and other top software organizations, Whittaker introduces innovative new processes for manual testing that are repeatable, prescriptive,...
more

See more recommendations for this book...

Don't have time to read the top Software Testing books of all time? Read Shortform summaries.

Shortform summaries help you learn 10x faster by:

  • Being comprehensive: you learn the most important points in the book
  • Cutting out the fluff: you focus your time on what's important to know
  • Interactive exercises: apply the book's ideas to your own life with our educators' guidance.
21
A comprehensive, up-to-date and practical introduction to software test design. This book presents all the important test design techniques in a single place and in a consistent and easy-to-digest format. An immediately useful handbook for test engineers, developers, quality assurance professionals and requirements and systems analysts, it enables you to: choose the best test case design; find software defects in less time and with fewer resources; and develop optimal strategies that help reduce the likelihood of costly errors. It also assists you in estimating the effort, time and cost of... more

See more recommendations for this book...

22
Automated testing is a cornerstone of agile development. An effective testing strategy will deliver new functionality more aggressively, accelerate user feedback, and improve quality. However, for many developers, creating effective automated tests is a unique and unfamiliar challenge. xUnit Test Patterns is the definitive guide to writing automated tests using xUnit, the most popular unit testing framework in use today. Agile coach and test automation expert Gerard Meszaros describes 68 proven patterns for making tests easier to write, understand, and maintain. He then shows... more

See more recommendations for this book...

23
Successful software depends as much on scrupulous testing as it does on solid architecture or elegant code. But testing is not a routine process, it's a constant exploration of methods and an evolution of good ideas.

Beautiful Testing offers 23 essays from 27 leading testers and developers that illustrate the qualities and techniques that make testing an art. Through personal anecdotes, you'll learn how each of these professionals developed beautiful ways of testing a wide range of products -- valuable knowledge that you can apply to your own projects.

Here's a...
more

See more recommendations for this book...

24
This book is written for the test analyst who wants to achieve advanced skills in test analysis, design, and execution. With a hands-on, exercise-rich approach, this book teaches you how to define and carry out the tasks required to put a test strategy into action. Learn how to analyze the system, taking into account the user s quality expectations. Additionally, learn how to evaluate system requirements as part of formal and informal reviews, using an understanding of the business domain to determine requirement validity. You will be able to analyze, design, implement, and execute tests,... more

See more recommendations for this book...

25
Unit Testing: Principles, Patterns and Practices shows you how to refine your existing unit tests by implementing modern best practices. You’ll learn to spot which tests are performing, which need refactoring, and which need to be deleted entirely! Upgrade your testing suite with new testing styles, good patterns, and reliable automated testing. less

See more recommendations for this book...

26

BBST Foundations of Software Testing

The Foundations in Software Testing workbook supports students and self-studiers who want a context-driven introduction to black box software testing. Used in parallel with the instructional materials provided at the Center for Software Testing Education and Research (testingeducation.org/BBST), readers will learn basic testing terminology and consider fundamental challenges in software testing. These challenges include:

- the mission of testing,
- the oracle problem,
- the measurement...
more

See more recommendations for this book...

27
Software development happens in your head. Not in an editor, IDE, or design tool. You're well educated on how to work with software and hardware, but what about wetware--our own brains? Learning new skills and new technology is critical to your career, and it's all in your head.

In this book by Andy Hunt, you'll learn how our brains are wired, and how to take advantage of your brain's architecture. You'll learn new tricks and tips to learn more, faster, and retain more of what you learn.

You need a pragmatic approach to thinking and learning. You need to...
more

See more recommendations for this book...

28
Janet Gregory and Lisa Crispin pioneered the agile testing discipline with their previous work, "Agile Testing." Now, in "More Agile Testing, "they reflect on all they ve learned since. They address crucial emerging issues, share evolved agile practices, and cover key issues agile testers have asked to learn more about. Packed with new examples from real teams, this insightful guide offers detailed information about adapting agile testing for your environment; learning from experience and continually improving your test processes; scaling agile testing across teams; and overcoming the... more

See more recommendations for this book...

29

Clean Agile

Back to Basics

Twenty years after the Agile Manifesto was first presented, the legendary Robert C. Martin ("Uncle Bob") reintroduces agile values and principles for a new generation of software developers. In this eagerly-awaited book, the best-selling author of The Clean Coder shows how to bring unprecedented levels of professionalism and discipline to agile development -- and thereby write far more effective, successful software.
As with his other books, Martin's Clean Agile: Back to Basics doesn't merely present multiple choices and options, and say "use your best judgment":...
more

See more recommendations for this book...

30

Dig deep and master the intricacies of the common language runtime, C#, and .NET development. Led by programming expert Jeffrey Richter, a longtime consultant to the Microsoft .NET team - you’ll gain pragmatic insights for building robust, reliable, and responsive apps and components.

Fully updated for .NET Framework 4.5 and Visual Studio 2012 Delivers a thorough grounding in the .NET Framework architecture, runtime environment, and other key topics, including asynchronous programming and the new Windows Runtime Provides extensive code samples in Visual C# 2012 ...
more

See more recommendations for this book...

Don't have time to read the top Software Testing books of all time? Read Shortform summaries.

Shortform summaries help you learn 10x faster by:

  • Being comprehensive: you learn the most important points in the book
  • Cutting out the fluff: you focus your time on what's important to know
  • Interactive exercises: apply the book's ideas to your own life with our educators' guidance.
31
Summary

Specification by Example is an emerging practice for creating software based on realistic examples, bridging the communication gap between business stakeholders and the dev teams building the software. In this book, author Gojko Adzic distills interviews with successful teams worldwide, sharing how they specify, develop, and deliver software, without defects, in short iterative delivery cycles.

About the Technology

Specification by Example is a collaborative method for specifying requirements and tests. Seven patterns, fully explored in...
more

See more recommendations for this book...

32

The Art of Software Testing

This long-awaited revision of a bestseller provides a practical discussion of the nature and aims of software testing. You'll find the latest methodologies for the design of effective test cases, including information on psychological and economic principles, managerial aspects, test tools, high-order testing, code inspections, and debugging. Accessible, comprehensive, and always practical, this edition provides the key information you need to test successfully, whether a novice or a working programmer. Buy your copy today and end up with fewer bugs tomorrow. less

See more recommendations for this book...

33

Site Reliability Engineering

How Google Runs Production Systems

The overwhelming majority of a software system's lifespan is spent in use, not in design or implementation. So, why does conventional wisdom insist that software engineers focus primarily on the design and development of large-scale computing systems?

In this collection of essays and articles, key members of Google's Site Reliability Team explain how and why their commitment to the entire lifecycle has enabled the company to successfully build, deploy, monitor, and maintain some of the largest software systems in the world. You'll learn the principles and practices that enable...
more

See more recommendations for this book...

34
Whether it's in Java, .NET, or Ruby on Rails, getting your application ready to ship is only half the battle. Did you design your system to survivef a sudden rush of visitors from Digg or Slashdot? Or an influx of real world customers from 100 different countries? Are you ready for a world filled with flakey networks, tangled databases, and impatient users?

If you're a developer and don't want to be on call for 3AM for the rest of your life, this book will help.

In Release It!, Michael T. Nygard shows you how to design and architect your...
more

See more recommendations for this book...

35

Java For Testers

Books that introduces java using testing as the perspective less

See more recommendations for this book...

36

A Scrum Book

The Spirit of the Game

Gain insights and depth of rationale into Scrum from many highly respected world authorities, including one of its founders, who lead you through the deep foundations of Scrum's structure and practice. Enhance and customize your Scrum practice with ninety-four organizational building blocks, called patterns, that you can freely and flexibly choose from to fit your needs. Understand and appreciate the history of Scrum and the role it plays in solving common problems in product development.

Building a successful product usually involves teams of people, and many choose the Scrum...
more

See more recommendations for this book...

37
A hands-on guide to testing techniques that deliver reliable software and systems

Testing even a simple system can quickly turn into a potentially infinite task. Faced with tight costs and schedules, testers need to have a toolkit of practical techniques combined with hands-on experience and the right strategies in order to complete a successful project. World-renowned testing expert Rex Black provides you with the proven methods and concepts that test professionals must know. He presents you with the fundamental techniques for testing and clearly shows you how to select and apply...
more

See more recommendations for this book...

38
Throughout human history, thoughts, values and behaviors have been colored by language and the prevailing view of the universe. With the advent of Quantum Mechanics, relativity, non-Euclidean geometries, non-Aristotelian logic and General Semantics, the scientific view of the world has changed dramatically from just a few decades ago. Nonetheless, human thinking is still deeply rooted in the cosmology of the Middle Ages. Quantum Psychology is the book to change your way of perceiving yourself—and the universe—for the 21st century. Some say it's materialistic, others call it... more

See more recommendations for this book...

39
This unique and insightful book challenges our prevailing and often fallacious attitudes about schooling. In today's volatile job market, ideas are more important than training, innovation is more important than credentials; traditional schooling may no longer be necessary or even useful. The ability to educate oneself 'to learn how to learn' is crucial. In Secrets of a Buccaneer-Scholar James Bach demonstrates how to nurture one's natural curiosities and passions through the whimsical learning process he calls 'buccaneering' demonstrating that those who understand this fundamental... more

See more recommendations for this book...

40
New edition of one of the most influential books on managingsoftware and hardware testing

In this new edition of his top-selling book, Rex Black walks youthrough the steps necessary to manage rigorous testing programs ofhardware and software. The preeminent expert in his field, Mr.Black draws upon years of experience as president of both theInternational and American Software Testing Qualifications boardsto offer this extensive resource of all the standards, methods, andtools you'll need.

The book covers core testing concepts and thoroughly examinesthe best test...
more

See more recommendations for this book...

Don't have time to read the top Software Testing books of all time? Read Shortform summaries.

Shortform summaries help you learn 10x faster by:

  • Being comprehensive: you learn the most important points in the book
  • Cutting out the fluff: you focus your time on what's important to know
  • Interactive exercises: apply the book's ideas to your own life with our educators' guidance.
41
Just as a professional athlete doesn't show up without a solid game plan, ethical hackers, IT professionals, and security researchers should not be unprepared, either. The Hacker Playbook provides them their own game plans. Written by a longtime security professional and CEO of Secure Planet, LLC, this step-by-step guide to the "game" of penetration hacking features hands-on examples and helpful advice from the top of the field.

Through a series of football-style "plays," this straightforward guide gets to the root of many of the roadblocks people may face while penetration...
more

See more recommendations for this book...

43
Summary

The Art of Unit Testing, Second Edition guides you step by step from writing your first simple tests to developing robust test sets that are maintainable, readable, and trustworthy. You'll master the foundational ideas and quickly move to high-value subjects like mocks, stubs, and isolation, including frameworks such as Moq, FakeItEasy, and Typemock Isolator. You'll explore test patterns and organization, working with legacy code, and even "untestable" code. Along the way, you'll learn about integration testing and techniques and tools for testing databases...
more

See more recommendations for this book...

45
Eleventh Hour CISSP: Study Guide, Third Edition provides readers with a study guide on the most current version of the Certified Information Systems Security Professional exam. This book is streamlined to include only core certification information, and is presented for ease of last-minute studying. Main objectives of the exam are covered concisely with key concepts highlighted.

The CISSP certification is the most prestigious, globally-recognized, vendor neutral exam for information security professionals. Over 100,000 professionals are certified worldwide, with many more...
more

See more recommendations for this book...

46
This book teaches test managers what they need to know to achieve advanced skills in test estimation, test planning, test monitoring, and test control. Readers will learn how to define the overall testing goals and strategies for the systems being tested.

This hands-on, exercise-rich book provides experience with planning, scheduling, and tracking these tasks. You'll be able to describe and organize the necessary activities as well as learn to select, acquire, and assign adequate resources for testing tasks. Learn how to form, organize, and lead testing teams Master the organizing...
more

See more recommendations for this book...

48
This book is written for the technical test analyst who wants to achieve advanced skills in test analysis, design, and execution. With a hands-on, exercise-rich approach, this book teaches you how to define and carry out the tasks required to implement a test strategy. You will be able to analyze, design, implement, and execute tests using risk considerations to determine the appropriate effort and priority for tests. This book will help you prepare for the ISTQB Advanced Technical Test Analyst exam. Included are sample exam questions for most of the learning objectives covered by the latest... more

See more recommendations for this book...

49
As Python continues to grow in popularity, projects are becoming larger and more complex. Many Python developers are now taking an interest in high-level software architecture patterns such as hexagonal/clean architecture, event-driven architecture, and strategic patterns prescribed by domain-driven design (DDD). But translating those patterns into Python isn't always straightforward.

With this practical guide, Harry Percival and Bob Gregory from MADE.com introduce proven architectural design patterns to help Python developers manage application complexity. Each pattern is...
more

See more recommendations for this book...

50

How We Test Software at Microsoft

It may surprise you to learn that Microsoft employs as many software testers as developers. Less surprising is the emphasis the company places on the testing discipline--and its role in managing quality across a diverse, 150+ product portfolio.

This book--written by three of Microsoft's most prominent test professionals--shares the best practices, tools, and systems used by the company's 9,000-strong corps of testers. Learn how your colleagues at Microsoft design and manage testing, their approach to training and career development, and what challenges they see ahead. Most...
more

See more recommendations for this book...

Don't have time to read the top Software Testing books of all time? Read Shortform summaries.

Shortform summaries help you learn 10x faster by:

  • Being comprehensive: you learn the most important points in the book
  • Cutting out the fluff: you focus your time on what's important to know
  • Interactive exercises: apply the book's ideas to your own life with our educators' guidance.
51

How to Reduce the Cost of Software Testing

Plenty of software testing books tell you how to test well; this one tells you how to do it while decreasing your testing budget. A series of essays written by some of the leading minds in software testing, How to Reduce the Cost of Software Testing provides tips, tactics, and techniques to help readers accelerate the testing process, improve the performance of the test teams, and lower costs.



The distinguished team of contributors-that includes corporate test leaders, best paper authors, and keynote speakers from leading software testing...
more

See more recommendations for this book...

52
This practical guide brings DevOps principles to Salesforce development. It fits together two major movements within the IT world: the movement to Software/Platform as a Service (SaaS/PaaS), and the DevOps movement. While SaaS and PaaS allow companies to invest in their core competencies rather than maintain their own infrastructure, the goal of DevOps is to optimize the process of delivering software innovation and value.

The release of Salesforce DX in late 2017 unlocks the possibility of a true DevOps workflow on Salesforce. But DevOps is new to the Salesforce world and there is...
more

See more recommendations for this book...

53

The Cucumber Book

Your customers want rock-solid, bug-free software that does exactly what they expect it to do. Yet they can't always articulate their ideas clearly enough for you to turn them into code. The Cucumber Book dives straight into the core of the problem: communication between people. Cucumber saves the day; it's a testing, communication, and requirements tool - all rolled into one.

We'll show you how to express your customers' wild ideas as a set of clear, executable specifications that everyone on the team can read. You'll learn how to feed those examples into Cucumber and let...
more

See more recommendations for this book...

55
Most applications today are distributed in some fashion. Monitoring the health and performance of these distributed architectures requires a new approach. Enter distributed tracing, a method of profiling and monitoring applications--especially those that use microservice architectures. There's just one problem: distributed tracing can be hard. But it doesn't have to be.

With this practical guide, you'll learn what distributed tracing is and how to use it to understand the performance and operation of your software. Key players at LightStep walk you through instrumenting your code...
more

See more recommendations for this book...

57
Stop manually analyzing binary! Practical Binary Analysis is the first book of its kind to present advanced binary analysis topics, such as binary instrumentation, dynamic taint analysis, and symbolic execution, in an accessible way.

As malware increasingly obfuscates itself and applies anti-analysis techniques to thwart our analysis, we need more sophisticated methods that allow us to raise that dark curtain designed to keep us out--binary analysis can help. The goal of all binary analysis is to determine (and possibly modify) the true properties of binary programs...
more

See more recommendations for this book...

58

Dependency Injection in .NET

Summary

Dependency Injection in .NET, winner of the 2013 Jolt Awards for Productivity, presents core DI patterns in plain C#, so you'll fully understand how DI works, covers integration with standard Microsoft technologies like ASP.NET MVC, and teaches you to use DI frameworks like Structure Map, Castle Windsor, and Unity.

About the TechnologyDependency Injection is a great way to reduce tight coupling between software components. Instead of hard-coding dependencies, such as specifying a database driver, you inject a list of services that a component may...
more

See more recommendations for this book...

59

Guide to Advanced Software Testing

Software testing is a critical aspect of the software development process, and this heavily illustrated reference takes professionals on a complete tour of this increasingly important, multi-dimensional area. This book offers a practical understanding of the most critical software testing topics and their relationships and inter-dependencies. less

See more recommendations for this book...

60

Exploring Requirements

Quality Before Design

Partial ContentsPart 1: Negotiating a Common Understanding1. Methodologies Aren't Enough2. Ambiguity in Stating Requirements3. Sources of Ambiguity4. The Tried but Untrue Use of Direct QuestionsPart II: Ways to Get Started5. Starting Points6. Context-Free Questions7. Getting the Right People Involved8. Making Meetings Work for Everybody9. Reducing Ambiguity from Start to FinishPart III: Exploring the Possibilities10. Idea-Generation Meetings11. Right-Brain Methods12. The Project's Name13. Facilitating in the Face of ConflictPart IV: Clarifying Expectations14. Functions15. Attributes16.... more

See more recommendations for this book...

Don't have time to read the top Software Testing books of all time? Read Shortform summaries.

Shortform summaries help you learn 10x faster by:

  • Being comprehensive: you learn the most important points in the book
  • Cutting out the fluff: you focus your time on what's important to know
  • Interactive exercises: apply the book's ideas to your own life with our educators' guidance.
62
Statistical methods are a key part of of data science, yet very few data scientists have any formal statistics training. Courses and books on basic statistics rarely cover the topic from a data science perspective. This practical guide explains how to apply various statistical methods to data science, tells you how to avoid their misuse, and gives you advice on what's important and what's not.

Many data science resources incorporate statistical methods but lack a deeper statistical perspective. If you're familiar with the R programming language, and have some exposure to...
more

See more recommendations for this book...

63
"The Basics of Hacking and Penetration Testing "serves as an introduction to the steps required to complete a penetration test or perform an ethical hack. You learn how to properly utilize and interpret the results of modern day hacking tools; which are required to complete a penetration test. Tool coverage will include, Backtrack Linux, Google, Whois, Nmap, Nessus, Metasploit, Netcat, Netbus, and more. A simple and clean explanation of how to utilize these tools will allow youa to gain a solid understanding of each of the four phases and prepare them to take on more in-depth texts and... more

See more recommendations for this book...

65

Handbook of Model Checking

Model checking is a computer-assisted method for the analysis of dynamical systems that can be modeled by state-transition systems. Drawing from research traditions in mathematical logic, programming languages, hardware design, and theoretical computer science, model checking is now widely used for the verification of hardware and software in industry.


The editors and authors of this handbook are among the world's leading researchers in this domain, and the 32 contributed chapters present a thorough view of the origin, theory, and application of model checking. In particular,...
more

See more recommendations for this book...

66
Outlining 12 specific test processes that must be mastered to become skilled at test management, this text provides examples, specifics and a running case study to bring the content to life. less

See more recommendations for this book...

67

The Domain Testing Workbook

Domain testing is the most widely taught technique in software testing. However, many of the presentations stick with examples that are too simple to provide a strong basis for applying the technique. Others focus on mathematical models or analysis of the program's source code. The Domain Testing Workbook will help you develop deep skill with this technique whether or not you have access to source code or an abiding interest in mathematics.

The Domain Testing Workbook provides a schema to organize domain testing and test design, with dozens of...
more

See more recommendations for this book...

68
Another day without Test-Driven Development means more time wasted chasing bugs and watching your code deteriorate. You thought TDD was for someone else, but it's not! It's for you, the embedded C programmer. TDD helps you prevent defects and build software with a long useful life. This is the first book to teach the hows and whys of TDD for C programmers.

TDD is a modern programming practice C developers need to know. It's a different way to program---unit tests are written in a tight feedback loop with the production code, assuring your code does what you think. You get valuable...
more

See more recommendations for this book...

69

Software Testing

An ISTQB-ISEB Foundation Guide

The bestselling software testing title is the only official textbook of the ISTQB - ISEB Foundation Certificate in Software Testing. This revised 2nd edition covers the 2010 update to the exam syllabus. It is ideal for those with a little experience of software testing who wish to cement their knowledge with industry-recognised techniques and theory. "Succinctly and clearly written with no non-sense. An unreserved 5 for value for money" IT Training Magazine (referring to 1st edition) less

See more recommendations for this book...

70
When the pressure is on to root out an elusive software or hardware glitch, what’s needed is a cool head courtesy of a set of rules guaranteed to work on any system, in any circumstance. Written in a frank but engaging style, Debuggingprovides simple, foolproof principles guaranteed to help find any bug quickly. This book makes those shelves of application-specific debugging books (on C++, Perl, Java, etc.) obsolete. It changes the way readers think about debugging, making those pesky problems suddenly much easier to find and fix. Illustrating the rules with real-life bug-detection war... more

See more recommendations for this book...

Don't have time to read the top Software Testing books of all time? Read Shortform summaries.

Shortform summaries help you learn 10x faster by:

  • Being comprehensive: you learn the most important points in the book
  • Cutting out the fluff: you focus your time on what's important to know
  • Interactive exercises: apply the book's ideas to your own life with our educators' guidance.
72

CISSP All-in-One Exam Guide

A new edition of Shon Harris' bestselling exam prep guide--fully updated for the new CISSP 2018 Common Body of Knowledge
This effective self-study guide fully prepares you for the challenging CISSP exam and offers 100% coverage of all exam domains. This edition has been thoroughly revised to cover the new CISSP 2018 Common Body of Knowledge, hot spot and drag and drop question formats, and more.
CISSP All-in-One Exam Guide, Eighth Edition features hands-on exercises as well as "Notes," "Tips," and "Cautions" that provide real-world insight and call out potentially...
more

See more recommendations for this book...

73
For more than twenty-five years, An Introduction to General Systems Thinking has been hailed as an innovative introduction to systems theory, with applications in computer science and beyond. Used in university courses and professional seminars all over the world, the text has proven its ability to open minds and sharpen thinking.
Originally published in 1975 and reprinted more than twenty times over a quarter century -- and now available for the first time from Dorset House Publishing -- the text uses clear writing and basic algebraic principles to explore new approaches to projects,...
more

See more recommendations for this book...

74
As the digital economy changes the rules of the game for enterprises, it's also changing the role of architects. In addition to making technical decisions, architects can help change the organization's structure and processes to support this transition. To do that, architects need to take the express elevator from the engine room to the penthouse, where business strategy resides.

Brimming with anecdotes from actual IT transformations, this book prepares software architects, senior developers, and other IT professionals for a more complex but rewarding role in the enterprise.
more

See more recommendations for this book...

75

Software Testing Techniques

Finding the Defects That Matter

Written by IBM professionals, this book teaches practical testing techniques for achieving robust reliability in large software projects. Focusing on real-life techniques illustrated through examples and case studies gleaned from the authors' experiences of mainframe testing and operation, software engineers will learn the tried and true techniques that are used for testing multimillion-dollar commercial software products.J less

See more recommendations for this book...

76

Fifty Quick Ideas to Improve Your User Stories

This book will help you write better user stories, spot and fix common issues, split stories so that they are smaller but still valuable, and deal with difficult stuff like crosscutting concerns, long-term effects and non-functional requirements. Above all, this book will help you achieve the promise of agile and iterative delivery: to ensure that the right stuff gets delivered through productive discussions between delivery team members and business stakeholders. less

See more recommendations for this book...

77
This book is for cross-functional teams working in an iterative delivery environment, planning with user stories and testing frequently changing software under tough time pressure. This book will help you test your software better, easier and faster. Many of these ideas also help teams engage their business stakeholders better in defining key expectations and improve the quality of their software products. less

See more recommendations for this book...

78
Do less work when testing your Python code, but be just as expressive, just as elegant, and just as readable. The pytest testing framework helps you write tests quickly and keep them readable and maintainable - with no boilerplate code. Using a robust yet simple fixture model, it's just as easy to write small tests with pytest as it is to scale up to complex functional testing for applications, packages, and libraries. This book shows you how.

For Python-based projects, pytest is the undeniable choice to test your code if you're looking for a full-featured, API-independent,...
more

See more recommendations for this book...

79
What is software architecture? The answer is multi-tiered. At the highest level, there are the architecture patterns that define the overall shape and structure of software applications. Down a level is the architecture that is specifically related to the purpose of the software application. Yet another level down resides the architecture of the modules and their interconnections. This is the domain of design patterns, packages, components, and classes. less

See more recommendations for this book...

80
By taking you through the development of a web application from beginning to end, this book demonstrates the practical advantages of test-driven development with Python. You’ll learn everything from the basics of database integration and the use of JavaScript to browser-automation tools like Selenium, and advanced topics such as NoSQL, Web Sockets, and async programming.

Ideal for beginners, this book teaches a development methodology that leads to peace of mind, cleaner code, and better web apps.
less

See more recommendations for this book...

Don't have time to read the top Software Testing books of all time? Read Shortform summaries.

Shortform summaries help you learn 10x faster by:

  • Being comprehensive: you learn the most important points in the book
  • Cutting out the fluff: you focus your time on what's important to know
  • Interactive exercises: apply the book's ideas to your own life with our educators' guidance.
82
This book is written specifically to prepare you for the ISTQB foundation certification exam (CTFL) based on the new 2018 V3.1 syllabus. This book presents three complete sets of tough sample exam questions and the solution chapters providing a detailed explanation for each answer for every question.This book covers exam concepts and provides key review on exam topics. The book has special tips and tricks to help you solve complex questions quickly in less time. This book will also help you to check your progress throughout your exam preparation and will provide confidence to face the real... more

See more recommendations for this book...

83
Node.js is white hot, powering the server side of major web apps from Walmart, PayPal, and Netflix. While super-powerful, raw Node can be complex and awkward. Express.js is a web application framework for Node that organizes server-side JavaScript into testable, maintainable modules. It provides a powerful set of features to efficiently manage routes, requests, and views, along with beautiful boilerplate for web applications. Lightweight, fast, and unobtrusive, Express helps harness Node's raw power so developers can concentrate on what the application does instead of managing the nit-picky... more

See more recommendations for this book...

84

Introducing Software Testing

This volume offers a step-by-step approach for getting started with practical software testing tasks. It is intended to serve developers with no experience in testing but who have been assigned the duty of testing the system. There are case studies based on the authors' experiences in industry. less

See more recommendations for this book...

86
As the title states, this is a friendly introduction to software testing. It covers the basics of testing theory and terminology, how to write test plans, and how defects are found and reported. It also goes over more advanced testing topics such as performance testing, security testing, combinatorial testing and others. Written by a software engineer with more than fifteen years of software development and quality assurance experience, this book provides an industry-focused introduction to the field of software testing. less

See more recommendations for this book...

87
Learn how people break websites and how you can, too.

Real-World Bug Hunting is the premier field guide to finding software bugs. Whether you're a cyber-security beginner who wants to make the internet safer or a seasoned developer who wants to write secure code, ethical hacker Peter Yaworski will show you how it's done.

You'll learn about the most common types of bugs like cross-site scripting, insecure direct object references, and server-side request forgery. Using real-life case studies of rewarded vulnerabilities from applications like...
more

See more recommendations for this book...

88

Systemic Software Testing

This textbook sets out to provide professionals with an in-depth understanding of the software-testing people and process issues that are critical for delivering high-quality software on time and within budget. The authors aim to give those involved in building and maintaining complex, mission-critical software systems a flexible, risk-based process to improve their software-testing capabilities. Whether an organization currently has a well-defined testing process or almost no process, this resource provides insights into better ways to test software. less

See more recommendations for this book...

89
With more than 600 security tools in its arsenal, the Kali Linux distribution can be overwhelming. Experienced and aspiring security professionals alike may find it challenging to select the most appropriate tool for conducting a given test. This practical book covers Kali's expansive security capabilities and helps you identify the tools you need to conduct a wide range of security tests and penetration tests. You'll also explore the vulnerabilities that make those tests necessary.

Author Ric Messier takes you through the foundations of Kali Linux and explains methods for...
more

See more recommendations for this book...

90

Continuous Integration

Improving Software Quality and Reducing Risk

For any software developer who has spent days in "integration hell," cobbling together myriad software components, Continuous Integration: Improving Software Quality and Reducing Risk illustrates how to transform integration from a necessary evil into an everyday part of the development process. The key, as the authors show, is to integrate regularly and often using continuous integration (CI) practices and techniques. The authors first examine the concept of CI and its practices from the ground up and then move on to explore other effective processes performed by CI systems,... more

See more recommendations for this book...

Don't have time to read the top Software Testing books of all time? Read Shortform summaries.

Shortform summaries help you learn 10x faster by:

  • Being comprehensive: you learn the most important points in the book
  • Cutting out the fluff: you focus your time on what's important to know
  • Interactive exercises: apply the book's ideas to your own life with our educators' guidance.
91
Rely on this robust and thorough guide to build and maintain successful test automation. As the software industry shifts from traditional waterfall paradigms into more agile ones, test automation becomes a highly important tool that allows your development teams to deliver software at an ever-increasing pace without compromising quality.
Even though it may seem trivial to automate the repetitive tester's work, using test automation efficiently and properly is not trivial. Many test automation endeavors end up in the "graveyard" of software projects. There are many things that affect the...
more

See more recommendations for this book...

92
Agile software development teams are seeking better ways to create business-facing automated tests that support the development of the right product. Cucumber is rapidly becoming the most popular tool for accomplishing this objective - but, until now, no book has covered Behavior-Driven Development (BDD) practices and tools in sufficient depth. Teams have been forced to keep reinventing the wheel, or else to hire one of a handful of consultants at great expense. Behavior-Driven Development with Cucumber fills that gap. � Richard Lawrence and Paul Rayner begin by illuminating... more

See more recommendations for this book...

93
This book is for everyone who needs to test the web. As a tester, you'll automate your tests. As a developer, you'll build more robust solutions. And as a team, you'll gain a vocabulary and a means to coordinate how to write and organize automated tests for the web. Follow the testing pyramid and level up your skills in user interface testing, integration testing, and unit testing. Your new skills will free you up to do other, more important things while letting the computer do the one thing it's really good at: quickly running thousands of repetitive tasks.This book shows you how to do three... more

See more recommendations for this book...

95
Master Bayesian Inference through Practical Examples and Computation-Without Advanced Mathematical Analysis Bayesian methods of inference are deeply natural and extremely powerful. However, most discussions of Bayesian inference rely on intensely complex mathematical analyses and artificial examples, making it inaccessible to anyone without a strong mathematical background. Now, though, Cameron Davidson-Pilon introduces Bayesian inference from a computational perspective, bridging theory to practice-freeing you to get results using computing power. Bayesian Methods for... more

See more recommendations for this book...

96
The rules and practices for Scrum—a simple process for managing complex projects—are few, straightforward, and easy to learn. But Scrum’s simplicity itself—its lack of prescription—can be disarming, and new practitioners often find themselves reverting to old project management habits and tools and yielding lesser results. In this illuminating series of case studies, Scrum co-creator and evangelist Ken Schwaber identifies the real-world lessons—the successes and failures—culled from his years of experience coaching companies in agile project management. Through them, you’ll understand how to... more

See more recommendations for this book...

97

Tacit and Explicit Knowledge

Much of what humans know we cannot say. And much of what we do we cannot describe. For example, how do we know how to ride a bike when we can’t explain how we do it? Abilities like this were called “tacit knowledge” by physical chemist and philosopher Michael Polanyi, but here Harry Collins analyzes the term, and the behavior, in much greater detail, often departing from Polanyi’s treatment.

In Tacit and Explicit Knowledge, Collins develops a common conceptual language to bridge the concept’s disparate domains by explaining explicit knowledge and classifying tacit...

more

See more recommendations for this book...

98
Presents a step-by-step approach to usability testing in today's fast-paced industrial production environment, where reducing time to market has become a prerequisite for survival. Contains chapter coverage for each of the six stages including numerous examples and case studies. Provides information on the politics and human elements of testing within an organization. Features plenty of inside tips and tricks to help ease the testing process. less

See more recommendations for this book...

99
If you hope to outmaneuver threat actors, speed and efficiency need to be key components of your cybersecurity operations. Mastery of the standard command-line interface (CLI) is an invaluable skill in times of crisis because no other software application can match the CLI's availability, flexibility, and agility. This practical guide shows you how to use the CLI with the bash shell to perform tasks such as data collection and analysis, intrusion detection, reverse engineering, and administration.

Authors Paul Troncone, founder of Digadel Corporation, and Carl Albing, coauthor of...
more

See more recommendations for this book...

100
In this, the fully updated second edition of his best-selling guide to researching Irish history using the internet, Chris Paton shows the extraordinary variety of sources that can now be accessed online. Although Ireland has lost many records that would have been of great interest to family historians, he demonstrates that a great deal of information survived and is now easily available to the researcher.Thanks to the pioneering efforts of the Public Record Office of Northern Ireland, the National Archives of Ireland, organizations such as FindmyPast Ireland, Ancestry.co.uk and RootsIreland... more

See more recommendations for this book...

Don't have time to read the top Software Testing books of all time? Read Shortform summaries.

Shortform summaries help you learn 10x faster by:

  • Being comprehensive: you learn the most important points in the book
  • Cutting out the fluff: you focus your time on what's important to know
  • Interactive exercises: apply the book's ideas to your own life with our educators' guidance.