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.
Author: Gojko Adzic,David Evans,Tom Roden
This book will help you write better 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. Who is this book for? This is a book for anyone working in an iterative delivery environment, doing planning with user stories. The ideas in this book are useful both to people relatively new to user stories and those who have been working with them for years. People who work in software delivery, regardless of their role, will find plenty of tips for engaging stakeholders better and structuring iterative plans more effectively. Business stakeholders working with software teams will discover how to provide better information to their delivery groups, how to set better priorities and how to outrun the competition by achieving more with less software. What's inside? Unsurprisingly, the book contains exactly fifty ideas. They are grouped into five major parts: - Creating stories: This part deals with capturing information about stories before they get accepted into the delivery pipeline. You'll find ideas about what kind of information to note down on story cards and how to quickly spot potential problems. - Planning with stories: This part contains ideas that will help you manage the big-picture view, set milestones and organise long-term work. - Discussing stories: User stories are all about effective conversations, and this part contains ideas to improve discussions between delivery teams and business stakeholders. You'll find out how to discover hidden assumptions and how to facilitate effective conversations to ensure shared understanding. - Splitting stories: The ideas in this part will help you deal with large and difficult stories, offering several strategies for dividing them into smaller chunks that will help you learn fast and deliver value quickly. - Managing iterative delivery: This part contains ideas that will help you work with user stories in the short and mid term, manage capacity, prioritise and reduce scope to achieve the most with the least software. About the authors: Gojko Adzic is a strategic software delivery consultant who works with ambitious teams to improve the quality of their software products and processes. Gojko's book Specification by Example was awarded the #2 spot on the top 100 agile books for 2012 and won the Jolt Award for the best book of 2012. In 2011, he was voted by peers as the most influential agile testing professional, and his blog won the UK agile award for the best online publication in 2010. David Evans is a consultant, coach and trainer specialising in the field of Agile Quality. David helps organisations with strategic process improvement and coaches teams on effective agile practice. He is regularly in demand as a conference speaker and has had several articles published in international journals.
Author: Gojko Adzic,David Evans
Category: Agile software development
Learn how to improve retrospectives and avoid stagnation, with fifty ideas designed to help you enhance and energise your continuous improvement effort. This book will help you get better outcomes from retrospectives and from any continuous improvement initiative. It will help you consider how best to prepare for retrospectives, generate innovative insights, achieve valuable outcomes, improve facilitation techniques, keep things fresh and maybe even how to have a bit of fun whilst doing it. This book is for anyone who undertakes continuous improvement of any sort, especially those looking to get better outcomes from retrospectives, either as a participant, facilitator, coach or manager of teams. We include ideas for people with varying levels of experience. So, whether you are just getting started with Scrum and retrospectives, or a veteran of continuous improvement looking to fine-tune or get new ideas, or if your retrospectives have become a bit stale and need re-invigorating, there are ideas in here to support you.
Author: Tom Roden,Ben Williams
A practical guide to impact mapping, a simple yet incredibly effective method for collaborative strategic planning that helps organizations make an impact with software.
Making a Big Impact with Software Products and Projects
Author: Gojko Adzic
Publisher: Provoking Thoughts
Bridging the Communication Gap is a book about improving communication between customers, business analysts, developers and testers on software projects, especially by using specification by example and agile acceptance testing. These two key emerging software development practices can significantly improve the chances of success of a software project. They ensure that all project participants speak the same language, and build a shared and consistent understanding of the domain. This leads to better specifications, flushes out incorrect assumptions and ensures that functional gaps are discovered before the development starts. With these practices in place you can build software that is genuinely fit for purpose.
Specification by Example and Agile Acceptance Testing
Author: Gojko Adzic
Uncover surprises, risks, and potentially serious bugs with exploratory testing. Rather than designing all tests in advance, explorers design and execute small, rapid experiments, using what they learned from the last little experiment to inform the next. Learn essential skills of a master explorer, including 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. Software is full of surprises. No matter how careful or skilled you are, when you create software it can behave differently than you intended. Exploratory testing mitigates those risks. Part 1 introduces the core, essential skills of a master explorer. You'll learn to craft charters to guide your exploration, to observe what's really happening (hint: it's harder than it sounds), to identify interesting variations, and to determine what expected behavior should be when exercising software in unexpected ways. Part 2 builds on that foundation. You'll learn how to explore by varying interactions, sequences, data, timing, and configurations. Along the way you'll see how to incorporate analysis techniques like state modeling, data modeling, and defining context diagrams into your explorer's arsenal. Part 3 brings the techniques back into the context of a software project. You'll apply the skills and techniques in a variety of contexts and integrate exploration into the development cycle from the very beginning. You can apply the techniques in this book to any kind of software. Whether you work on embedded systems, Web applications, desktop applications, APIs, or something else, you'll find this book contains a wealth of concrete and practical advice about exploring your software to discover its capabilities, limitations, and risks.
Reduce Risk and Increase Confidence with Exploratory Testing
Author: Elisabeth Hendrickson
Publisher: Pragmatic Bookshelf
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 box, and acceptance testing…getting usable feedback…tracking issues…choosing and creating tools…testing “Docs & Mocks,” interfaces, classes, modules, libraries, binaries, services, and infrastructure…reviewing code and refactoring…using test hooks, presubmit scripts, queues, continuous builds, and more. With these techniques, you can transform testing from a bottleneck into an accelerator–and make your whole organization more productive!
Author: James A. Whittaker,Jason Arbon,Jeff Carollo
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, teachable, and extremely effective. Whittaker defines both in-the-small techniques for individual testers and in-the-large techniques to supercharge test teams. He also introduces a hybrid strategy for injecting exploratory concepts into traditional scripted testing. You’ll learn when to use each, and how to use them all successfully. Concise, entertaining, and actionable, this book introduces robust techniques that have been used extensively by real testers on shipping software, illuminating their actual experiences with these techniques, and the results they’ve achieved. Writing for testers, QA specialists, developers, program managers, and architects alike, Whittaker answers crucial questions such as: • Why do some bugs remain invisible to automated testing--and how can I uncover them? • What techniques will help me consistently discover and eliminate “show stopper” bugs? • How do I make manual testing more effective--and less boring and unpleasant? • What’s the most effective high-level test strategy for each project? • Which inputs should I test when I can’t test them all? • Which test cases will provide the best feature coverage? • How can I get better results by combining exploratory testing with traditional script or scenario-based testing? • How do I reflect feedback from the development process, such as code changes?
Tips, Tricks, Tours, and Techniques to Guide Test Design
Author: James A. Whittaker
Publisher: Pearson Education
With the advent of agile methodologies, testing is becoming the responsibility of more and more team members. In this new book, noted testing expert Dustin imparts the best of her collected wisdom. She presents 50 specific tips for a better testing program. These 50 tips are divided into ten sections, and presented so as to mirror the chronology of a software project.
50 Specific Ways to Improve Your Testing
Author: Elfriede Dustin
Publisher: Addison-Wesley Professional
Describes a method of effectively specifying, testing, and delivering software, covering such topics as documentation, process patterns, and automation, along with case studies from a variety of firms.
How Successful Teams Deliver the Right Software
Author: Gojko Adzic
Publisher: Manning Publications
Because performance is paramount today, this thoroughly updated guide shows you how to test mission-critical applications for scalability and performance before you deploy them—whether it’s to the cloud or a mobile device. You’ll learn the complete testing process lifecycle step-by-step, along with best practices to plan, coordinate, and conduct performance tests on your applications. Set realistic performance testing goals Implement an effective application performance testing strategy Interpret performance test results Cope with different application technologies and architectures Understand the importance of End User Monitoring (EUM) Use automated performance testing tools Test traditional local applications, web applications, and web services Recognize and resolves issues often overlooked in performance tests Written by a consultant with over 15 years’ experience with performance testing, The Art of Application Performance Testing thoroughly explains the pitfalls of an inadequate testing strategy and offers a robust, structured approach for ensuring that your applications perform well and scale effectively when the need arises.
From Strategy to Tools
Author: Ian Molyneaux
Publisher: "O'Reilly Media, Inc."
Build fault tolerant concurrent and distributed applications with Akka About This Book Build networked applications that self-heal Scale out your applications to handle more traffic faster An easy-to-follow guide with a number of examples to ensure you get the best start with Akka Who This Book Is For This book is intended for beginner to intermediate Java or Scala developers who want to build applications to serve the high-scale user demands in computing today. If you need your applications to handle the ever-growing user bases and datasets with high performance demands, then this book is for you. Learning Akka will let you do more for your users with less code and less complexity, by building and scaling your networked applications with ease. What You Will Learn Use Akka to overcome the challenges of concurrent programming Resolve the issues faced in distributed computing with the help of Akka Scale applications to serve a high number of concurrent users Make your system fault-tolerant with self-healing applications Provide a timely response to users with easy concurrency Reduce hardware costs by building more efficient multi-user applications Maximise network efficiency by scaling it In Detail Software today has to work with more data, more users, more cores, and more servers than ever. Akka is a distributed computing toolkit that enables developers to build correct concurrent and distributed applications using Java and Scala with ease, applications that scale across servers and respond to failure by self-healing. As well as simplifying development, Akka enables multiple concurrency development patterns with particular support and architecture derived from Erlang's concept of actors (lightweight concurrent entities). Akka is written in Scala, which has become the programming language of choice for development on the Akka platform. Learning Akka aims to be a comprehensive walkthrough of Akka. This book will take you on a journey through all the concepts of Akka that you need in order to get started with concurrent and distributed applications and even build your own. Beginning with the concept of Actors, the book will take you through concurrency in Akka. Moving on to networked applications, this book will explain the common pitfalls in these difficult problem areas while teaching you how to use Akka to overcome these problems with ease. The book is an easy to follow example-based guide that will strengthen your basic knowledge of Akka and aid you in applying the same to real-world scenarios. Style and approach An easy-to-follow, example-based guide that will take you through building several networked-applications that work together while you are learning concurrent and distributed computing concepts. Each topic is explained while showing you how to design with Akka and how it is used to overcome common problems in applications. By showing Akka in context to the problems, it will help you understand what the common problems are in distributed applications and how to overcome them.
Author: Jason Goodwin
Publisher: Packt Publishing Ltd
The First Complete Guide to Mobile App Testing and Quality Assurance: Start-to-Finish Testing Solutions for Both Android and iOS Today, mobile apps must meet rigorous standards of reliability, usability, security, and performance. However, many mobile developers have limited testing experience, and mobile platforms raise new challenges even for long-time testers. Now, Hands-On Mobile App Testing provides the solution: an end-to-end blueprint for thoroughly testing any iOS or Android mobile app. Reflecting his extensive real-life experience, Daniel Knott offers practical guidance on everything from mobile test planning to automation. He provides expert insights on mobile-centric issues, such as testing sensor inputs, battery usage, and hybrid apps, as well as advice on coping with device and platform fragmentation, and more. If you want top-quality apps as much as your users do, this guide will help you deliver them. You’ll find it invaluable–whether you’re part of a large development team or you are the team. Learn how to Establish your optimal mobile test and launch strategy Create tests that reflect your customers, data networks, devices, and business models Choose and implement the best Android and iOS testing tools Automate testing while ensuring comprehensive coverage Master both functional and nonfunctional approaches to testing Address mobile’s rapid release cycles Test on emulators, simulators, and actual devices Test native, hybrid, and Web mobile apps Gain value from crowd and cloud testing (and understand their limitations) Test database access and local storage Drive value from testing throughout your app lifecycle Start testing wearables, connected homes/cars, and Internet of Things devices
A Guide for Mobile Testers and Anyone Involved in the Mobile App Business
Author: Daniel Knott
Publisher: Addison-Wesley Professional
Going beyond the mere exam prep with insight, explanations, and perspectives from the authors' years of experience, this invaluable, comprehensive study guide reinforces what you know, teaches you what you don't, and gives you the hands-on practice you need to boost your skills. --
Author: Jeanne Boyarsky,Scott Selikoff
Publisher: John Wiley & Sons
Virtualize your network with this step-by-step configuration guide to installing, configuring, and managing VMware NSX About This Book Understand VMware NSX's foundational components and architecture and discover best practices to help you manage VMware NSX Learn about the important aspects of VMware NSX 6.2 including installation, managing, monitoring, and configuring Learn to manage VMware NSX using best practices to elevate your skills in deploying VMware NSX in your environment Who This Book Is For This book is for those who want to learn to install, manage, and configure the VMware NSX Network Virtualization platform. If you want to explore, understand, or deploy VMware NSX in your environment, this book is for you. Also, this book can assist you to prepare for VMware NSX certification. Knowledge of basic networking concepts and VMware components such as vCenter and vSphere is required. What You Will Learn Explore the foundational components of VMware NSX Install and configure NSX manager and its components using best practices Deploy and configure VXLAN-enabled logical switches Secure your environment using Distributed Firewall and Data Security Configure third-party services in NSX Manage, configure, and deploy edge gateway services Understand software-defined networks In Detail VMware NSX is the network virtualization and security platform that emerged from VMware. It is a platform for the software-defined data center. This software networking platform allows complex networking topologies to be deployed programmatically in seconds. SDNs allow ease of deployment, management, and automation in deploying and maintaining new networks while reducing and in some cases completely eliminating the need to deploy traditional networks. In Learning VMware NSX, you will see some of these features of SDN and explore VMware NSX, starting with network virtualization. We'll then walk you through the components of NSX and provide step-by-step instructions to help you install and configure NSX. We also cover all the functional services of NSX, edge services gateway, service composer, and data security. In addition, we'll teach you to integrate partner solutions with NSX. Finally, we show you how to manage your NSX deployment and monitor NSX. Style and approach This is an easy-to-follow guide with tested configuration steps to get you up and running quickly. This book covers the nitty-gritty of installing, configuring, managing, and monitoring VMware NSX.
Author: Ranjit Singh Thakurratan
Publisher: Packt Publishing Ltd
Whether you are an experienced WebDriver developer or someone who was newly assigned a task to create automated tests, this book is for you. Since the ideas and concepts are described in simple terms, no previous experience in computer coding or programming is required.
Author: Dima Kovalenko
Publisher: Packt Publishing Ltd
A unique book that consists entirely of test automation case studies from a variety of domains - from the top names in the field * *Proven advice to empower development organizations to save time by mirroring others' experiences and save money by avoiding others' mistakes. *Insightful case studies from a wide variety of domains, including aerospace, pharmaceuticals, insurance, technology, and telecommunications. *Focuses on the basic issues, rather then technology trends, to give the book a long shelf life. The practice of test automation is becoming more and more popular, but many organizations are not yet experiencing success with it. This book unveils the secrets of how automation has been made to work in reality. The knowledge gained by reading this book can save months or years of effort in automating software testing by helping organizations avoid expensive mistakes and take advantage of proven ideas. By its nature, this book shows the current state of software test automation practice. The authors aim to keep the contributions focused on those things that are more universal (e.g. people issues, return on investment, etc.) and to minimize detailed technical content where this does not impede the process of learning valuable lessons, in order to give the book as long a shelf life as possible. Software practitioners always enjoy reading about what happened to others. For example, at conferences, case study presentations are usually very well attended. The authors/editors have gathered together a collection of experiences from a cross-section of industries and countries, both success stories and failures, in both agile and traditional development. In addition to the case studies, the authors/editors comment on issues raised in these stories, and also include a chapter summarizing good practices and common pitfalls.
Case Studies of Software Test Automation
Author: Dorothy Graham,Mark Fewster
Publisher: Addison-Wesley Professional
Many books cover functional testing techniques, but relatively few also cover technical testing. The Software Test Engineer's Handbook-2nd Edition fills that gap. Authors Graham Bath and Judy McKay are core members of the ISTQB Working Party that created the new Advanced Level Syllabus-Test Analyst and Advanced Level Syllabus-Technical Test Analyst. These syllabi were released in 2012. This book presents functional and technical aspects of testing as a coherent whole, which benefits test analyst/engineers and test managers. It provides a solid preparation base for passing the exams for Advanced Test Analyst and Advanced Technical Test Analyst, with enough real-world examples to keep you intellectually invested. This book includes information that will help you become a highly skilled Advanced Test Analyst and Advanced Technical Test Analyst. You will be able to apply this information in the real world of tight schedules, restricted resources, and projects that do not proceed as planned.
A Study Guide for the ISTQB Test Analyst and Technical Test Analyst Advanced Level Certificates 2012
Author: Graham Bath,Judy McKay
Publisher: Rocky Nook, Inc.
Decades of software testing experience condensed into the most important lessons learned. The world's leading software testing experts lend you their wisdom and years of experience to help you avoid the most common mistakes in testing software. Each lesson is an assertion related to software testing, followed by an explanation or example that shows you the how, when, and why of the testing lesson. More than just tips, tricks, and pitfalls to avoid, Lessons Learned in Software Testing speeds you through the critical testing phase of the software development project without the extensive trial and error it normally takes to do so. The ultimate resource for software testers and developers at every level of expertise, this guidebook features: * Over 200 lessons gleaned from over 30 years of combined testing experience * Tips, tricks, and common pitfalls to avoid by simply reading the book rather than finding out the hard way * Lessons for all key topic areas, including test design, test management, testing strategies, and bug reporting * Explanations and examples of each testing trouble spot help illustrate each lesson's assertion
A Context-Driven Approach
Author: Cem Kaner,James Bach,Bret Pettichord
Publisher: John Wiley & Sons