Large-scale and complex testing projects can stress the testing and automation practices we have learned through the years, resulting in less than optimal outcomes. However, a number of innovative ideas and concepts are emerging to better support industrial-strength testing for big projects. Hans Buwalda shares his experiences and presents strategies for organizing and managing testing on large projects. Learn how to design tests specifically for automation, including how to incorporate techniques like keyword testing and BDD. Discover what roles virtualization and the cloud can play—and the potential pitfalls of such options. Hans also describes the major challenges with global teams including time zones and cultural differences, and offers seven common problem “patterns” in globalization and what you can do to address them. Among the other takeaways from this class are tips to make your automation more stable and recommendations on how to deal with the numerous versions and configurations common in large projects.More Information
Begin your experience by attending half- or full-day tutorials. Please note that you must register for the tutorial(s) you want to attend as space is limited and many sell out quickly.
You're under tight time pressure with barely enough information to proceed with testing. How do you test quickly and inexpensively, yet still produce informative, credible, and accountable results? Rapid Software Testing, adopted by context-driven testers worldwide, offers a field-proven answer to this all-too-common dilemma. In this one-day sampler of the approach, Michael Bolton introduces you to the skills and practice of Rapid Software Testing through stories, discussions, and “minds-on” exercises that simulate important aspects of real testing problems. The rapid approach isn't just testing with speed or a sense of urgency; it's mission-focused testing that eliminates unnecessary work, assures that the most important things get done, and constantly asks how testers can help speed up the successful completion of the project. Join Michael to learn how Rapid Testing focuses on both the mind set and skill set of the individual tester, using tight loops of exploration and critical thinking skills to help continuously re-optimize testing to match clients' needs and expectations.
|Participants are strongly encouraged to bring a Windows-compatible computer to the class.|
Want to learn how to use Selenium from the ground up? Join Dave Haeffner as he shows you how to start from scratch and build a well-factored, maintainable, resilient, and parallelized set of tests that will run locally, on a continuous integration server, against a Selenium Grid, and in the cloud. These tests will work reliably and across all your browsers, while exercising relevant functionality that matters to your business. This session is for anyone—whether just getting started or experienced—who wants to use Selenium successfully in their organization and boost their career. Learn a repeatable baseline approach for Selenium test automation—regardless of your context. And if you are new to programming, don't sweat it. The core programming concepts you need to know will be covered in an approachable way as well. At the tutorial’s conclusion, you'll leave knowing how to get started on your journey and what it takes to successfully implement Selenium in your organization.More Information
Testing as a profession is becoming more and more demanding. We must adapt to faster development lifecycles, get to know about exploratory testing, and use different ways to add greater value to our projects. Bart Knaack believes that if we are to rise to this challenge, we need to learn additional skills—requirements engineering, database manipulation and monitoring using SQL, usability heuristics, exploratory testing, visual notation techniques for test preparation, and creation of test data. By mastering these skills, we will not only become better testers but we also can mentor others in their work. These skills enable us to improve software quality by means other than just testing. Come and learn about these skills and what is expected of a tester in today’s environment. Practice these skills and start off in the right direction for further improvement. Want to broaden your horizon? Join Bart and learn in a funtastic way.More Information
Have you ever needed a way to measure your leadership IQ? Or been in a performance review where the majority of time was spent discussing your need to improve as a leader? If you have ever wondered what your core leadership competencies are and how to build on and improve them, Jennifer Bonine shares a toolkit to help you do just that. This toolkit includes a personal assessment of your leadership competencies, explores a set of eight dimensions of successful leaders, provides suggestions on how you can improve competencies that are not in your core set of strengths, and describes techniques for leveraging and building on your strengths. These tools can help you become a more effective and valued leader in your organization. Exercises help you gain an understanding of yourself and strive for balanced leadership through recognition of both your strengths and your “development opportunities.”More Information
In test automation, we must often use several tools that have been developed or acquired over time with little consideration of an overall plan or architecture, and without considering the need for integration. As a result, productivity suffers and frustrations increase. Join Mike Sowers as he shares experiences from multiple organizations in creating an integrated test automation plan and developing a test automation architecture. Mike discusses both the good (engaging the technical architecture team) and the bad (too much isolation between test automators and test designers) on his test automation journey in large and small enterprises. Discover approaches to ensure that the test tools you currently have—and the new test tools you acquire or develop—will work well with other testing and application lifecycle software. Explore approaches to drive test automation adoption across multiple project teams and departments, and communicate the real challenges and potential benefits to your stakeholders.More Information
Exploratory testing is an approach to testing that emphasizes the freedom and responsibility of testers to continually optimize the value of their work. Exploratory testing is the process of three mutually supportive activities—learning, test design, and test execution—done in parallel. With skill and practice, exploratory testers typically uncover an order of magnitude more problems than when the same amount of effort is spent on procedurally-scripted testing. All testers conduct exploratory testing in one way or another, but few know how to do it systematically to obtain the greatest benefits. Even fewer can articulate the process. Paul Holland shares specific heuristics and techniques of exploratory testing that will help you get the most from this highly productive approach. Paul focuses on the skills and dynamics of exploratory testing, and how it can be combined with scripted approaches.More Information
The practice of agile software development requires a clear understanding of business needs. Misunderstanding requirements causes waste, slipped schedules, and mistrust within the organization. Jared Richardson shows how good acceptance tests can reduce misunderstanding of requirements. A testable requirement provides a single source that serves as the analysis document, acceptance criteria, regression test suite, and progress-tracker for any given feature. Jared explores the creation, evaluation, and use of testable requirements by the business and developers. Learn how to transform requirements into stories—small units of work—that have business value, small implementation effort, and easy to understand acceptance tests. This tutorial features an interactive exercise that starts with a high level feature, decomposes it into stories, applies acceptance tests to those stories, and estimates the stories for business value and implementation effort. The exercise demonstrates how big requirement stories can be decomposed into business-facing stories, rather than into technical tasks that the business does not understood.More Information
You’ve “gone agile” and have been relatively successful. So, how do you know how well your test team is really doing? And how do you continuously improve your test practices? When things get rocky, how do you handle the challenges without reverting to old habits? The path to high-performance agile testing isn’t easy or quick, and it helps to have a guide. So consider this tutorial your guide to ongoing, improved, and sustained high-performance agile testing. Join Bob Galen and Mary Thorn as they share lessons from their most successful agile testing transitions. Explore actual team case studies for building team skills, embracing agile requirements, fostering customer interaction, building agile test automation, driving business value, and testing at-scale—all building agile testing excellence. Examine the mistakes, adjustments, and successes, and learn how to react to real-world contexts. Leave with a better view of your team’s strengths, weaknesses, and where you need to focus to improve.More Information
As test managers and test professionals, we're constantly dealing with fragile egos, highly charged situations, and pressured people playing a high-stakes game under conditions of massive uncertainty. We're often the bearers of bad news and are sometimes perceived as critics, activating people's primal fear of being judged. The concept of emotional intelligence (EI), popularized by Harvard psychologist and science writer Daniel Goleman, has much to offer test managers and testers. Key EI skills include self-awareness, self-management, social awareness, and relationship management. Julie Gardiner discusses how EI can be useful in dealing with anger management, controlling negative thoughts, processing constructive criticism, and dealing with conflict—all within the context of the testing profession. Explore the concept of EI, assess your own levels of EI, and look at ways EI can help. This lively session is grounded in real-life examples, giving you concrete ideas to take back to work.More Information
A test strategy is the set of ideas that guides your test design. It's what explains why you test this instead of that, and why you test this way instead of that way. Strategic thinking matters because testers must make quick decisions about what needs testing right now and what can be left alone. You must be able to work through major threads without being overwhelmed by tiny details. James Bach describes how test strategy is organized around risk but is not defined before testing begins. Rather, test strategy evolves alongside testing as we learn more about the product. We start with a vague idea of our strategy, organize it quickly, and document as needed in a concise way. In the beginning, we start small. In the end, the strategy can be as formal and detailed as you want it to be. If you’d like to focus on testing and not paperwork, this approach is for you.More Information
Imagine you are assigned to test a feature with twenty independent parameters, with five possible states for each parameter. The total number of possible combinations is greater than a half trillion. At one test per millisecond, it would take more than 3,000 years to test all possible combinations. Bj Rollison explains that historical evidence shows that the vast majority of errors are caused by the interaction between two parameters. Pairwise testing is a systematic technique using powerful tools to efficiently produce a pairwise subset of all parameters. This technique quickly uncovers hard-to-find bugs while improving code coverage. Unfortunately, most discussions about pairwise tests only consider this technique on small-scale projects. However, its real power is revealed when we are faced with complex features that have multiple input parameters that interact. Bj introduces advanced modeling concepts to model input parameters. Using simple test framework, delegates will use a powerful, free tool to test a high volume of inputs.
|Note: This hands-on tutorial assumes that delegates are familiar with the basic concepts of pairwise testing and a basic understanding of programming. Delegates are strongly encouraged to bring a laptop with Visual Studio or Visual Studio C# Express installed.|
Innovation is a word frequently tossed around in organizations today. The standard clichés are do more with less and be creative. Companies want to be innovative but often struggle with how to define, implement, prioritize, and track their innovation efforts. Using the Innovation to Types model, Jennifer Bonine will help you transform your thinking regarding innovation and understand if your team and company goals match their innovation efforts. Learn how to classify your activities as “core” (to the business) or “context” (essential, but non-revenue generating). Once you understand how your innovation activities are related to revenue generating activities, you can better decide how much of your effort should be spent on core or context activities. Take away tools including an Innovation to Types model for classifying innovation, a Core and Context model for classifying your activities, and a way to map your innovation initiatives to different contexts.More Information
You have just been assigned to a new testing project. So, where do you start? How do you develop a plan and begin testing? How will you report on your progress? In this hands-on session, Paul Holland shares test project approaches based on the Heuristic Software Test Model from Rapid Software Testing. Learn and practice new ways to plan, execute, and report on testing activities. You’ll be given a product to test and start by creating three raw lists—Product Coverage Outline, Potential Risks, and Test Ideas—that help ensure comprehensive testing. Use these lists to create an initial set of test charters. Employing “advanced” test management tools—Excel and whiteboards with Sticky Notes—you’ll create clear and concise test reports without using “bad metrics” (counts of pass/fail test cases, percent of test cases executed vs. plan). Look forward to your next testing project—or improve your current one—with new ideas and your new-and-improved planning, testing, and reporting skills.More Information
With the adoption of agile practices in many organizations, the test automation landscape has changed. Bob Galen explores current disruptors to traditional automation strategies and discusses relevant and current adjustments you need to make when developing your automation business case. Open source tools are becoming incredibly viable and beat their commercial equivalents in many ways―not only in cost but also in functionality, creativity, evolutionary speed, and developer acceptance. Agile methods have fundamentally challenged our traditional automation strategies. Now we must keep up with incremental and emergent systems and architectures with their high rates of change. Bob explores new automation strategies for both greenfield applications and those pesky legacy projects. Learn how to wrap a business case and communication plan around them so you get the support you need. Leave this session with a serious game plan for delivering on the promise of agile test automation.More Information
Communication is at the heart of our profession. If we can’t convey our concerns in ways that connect with key members of the project team, our contribution is likely to be ignored—no matter how advanced our testing capabilities are. Because we act in an advisory capacity rather than being in command, our power to exert influence is almost entirely based on our communication skills. Join Julie Gardiner as she draws on techniques from psychology and marketing to help you get your message across. With people suffering information overload and deluged with emails, it is more important than ever to craft succinct and effective messages, using a range of communication modalities. Key themes include: non-verbal communication, presentation skills, persuasive writing, influencing skills, graphic communication, and communicating in teams and meetings. Attendees will use a range of hands-on exercises to practice the concepts being discussed.More Information
In today’s fast paced, ever changing world of software and technology, software performance testing is becoming essential to successful product implementation. To be successful we must understand several fundamental factors about performance testing. Dale Perry examines what it takes to plan and implement a software performance test across multiple environments. Dale identifies key issues, how they determine our level of success at implementing the necessary testing, and potential pitfalls. He addresses the tester’s role in performance testing, the performance testing process (planning, preparation, execution and reporting) focusing on planning and implementation, and integrating performance testing into the development process. Within the process, Dale discusses performance goals and objectives, the environment and architecture issues, operational profiles, (load definitions) and their importance to performance testing, understanding the various types of performance tests, defining appropriate measurements.More Information
Critical thinking is the kind of thinking that specifically looks for problems and mistakes. Regular people don't do a lot of it. However, if you want to be a great tester, you need to be a great critical thinker. Critically thinking testers save projects from dangerous assumptions and ultimately from disasters. The good news is that critical thinking is not just innate intelligence or a talent—it's a learnable and improvable skill you can master. Michael Bolton shares the specific techniques and heuristics of critical thinking and presents realistic testing puzzles that help you practice and increase your thinking skills. Critical thinking begins with just three questions—Huh? Really? and So?—that kick start your brain to analyze specifications, risks, causes, effects, project plans, and anything else that puzzles you. Join Michael for this interactive, hands-on session and practice your critical thinking skills. Study and analyze product behaviors and experience new ways to identify, isolate, and characterize bugs.More Information
The nature of exploration, coupled with the ability of testers to rapidly apply their skills and experience, make exploratory testing a widely used test approach—especially when time is short. Unfortunately, exploratory testing is often dismissed by project managers who assume that it is not reproducible, measurable, or accountable. If you have these concerns, you may find a solution in a technique called Session-Based Test Management (SBTM), developed by Jon Bach and his brother James. In SBTM, testers explore an area of a product, framing their testing in time-boxed “sessions” meant to create a meaningful and countable unit of work. In this hands-on tutorial (laptop required), Jon guides you through the mechanics of session-based testing to help you discover if it’s something valuable for your project. Through practical open-ended testing exercises, you may discover some surprising things about how you perform under pressure and can see how your colleagues respond to the same challenges.
|Participants are required to bring a laptop computer to this tutorial.|
Whether you are new to testing or looking for a better way to organize your test practices, understanding risk is essential to successful testing. Dale Perry describes a general risk-based framework—applicable to any development lifecycle model—to help you make critical testing decisions earlier and with more confidence. Learn how to focus your testing effort, what elements to test, and how to organize test designs and documentation. Review the fundamentals of risk identification, analysis, and the role testing plays in risk mitigation. Develop an inventory of test objectives to help prioritize your testing and translate objectives into a concrete strategy for creating tests. Focus your tests on the areas essential to your stakeholders. Execution and assessing test results provide a better understanding of both the effectiveness of your testing and the potential for failure in your software. Take back a proven approach to organize your testing efforts and new ways to add more value to your project and organization.More Information
Have you ever entered a room in a new office and started to look for switches? Were you able to switch on the right light on your first attempt? Did you blame yourself for the failure? If you did, you became a victim of false blame, cursing yourself for the poor design of products. Sharing why testers must be aware of the psychology behind product design, Parimala Hariprasad talks about how design concepts—affordances, signifiers, natural mappings, and gulfs of execution—can help you become a better tester. Parimala highlights how designers and testers, working together, lead both to designing explorable systems and helping to build great products that incorporate concepts like immediate feedback and visibility. Key takeaways include learning the basics of design thinking, understanding design case studies, familiarizing yourself with the concept of natural mappings, and applying these lessons to user experience testing.More Information
As testers, we know that we can define many more test cases than we will ever have time to design, execute, and report. The key problem in testing is choosing a small, “smart” subset—from the almost infinite number of tests available—that will find a large percentage of the defects. Join Lee Copeland to discover how to design test cases using formal black-box techniques, including equivalence class testing, boundary value testing, decision tables, and state-transition diagrams. Explore examples of each of these techniques in action. Don’t just pick test cases randomly. Instead, learn to selectively choose a set of test cases that maximizes your effectiveness and efficiency to find more defects in less time. Then, learn how to use the test results to evaluate the quality of both your products and your testing. Discover the test design techniques that will make your testing more productive.More Information
Let’s build a mobile app quality and testing strategy together. Whether you have a web, hybrid, or native app, building a quality and testing strategy means first understanding your customers and your competitors, and then testing your app under real-world conditions. Most importantly, it means having the data and tools to make quick, agile decisions on feature implementations and bug fixes. Jason Arbon guides you through the latest techniques, data, and tools to ensure you have an awesome mobile app quality and testing strategy. Leave this interactive session with a strategy for your very own app—or one you pretend to own. The information Jason shares is based on Applause.com/uTest's thousands of mobile app test cycles on hundreds of top mobile apps, data analytics on millions of apps, hundreds of millions of app store reviews, development of mobile apps, and consultations with top app development teams.
|Note: Bringing a laptop or tablet to this tutorial is preferred but is not required.|
Today’s software applications are often security critical, making security testing essential in a software quality program. Unfortunately, most testers have not been taught how to effectively test the security of the software applications they validate. Join Jeffery Payne as he shares what you need to know to integrate effective security testing into your everyday software testing activities. Learn how software vulnerabilities are introduced into code and exploited by hackers. Discover how to define and validate security requirements. Explore effective test techniques for assuring that common security features are tested. Learn about the most common security vulnerabilities, how to identify key security risks within applications, and how to use testing to mitigate them. Understand how to security test applications—both web- and GUI-based—during the software development process. Review examples of how common security testing tools work and are used in the security testing process. Take home valuable tools and techniques for effectively testing the security of your applications going forward.More Information
It’s not enough to verify that software conforms to requirements by passing established acceptance tests. Successful software products engage, entertain, and support the users' experience. Goals vary from project to project, but if your users do not embrace your software—no matter how robust and reliable it is—business can slip through your hands. Rob Sabourin shares how to elicit effective usability requirements with techniques such as storyboarding and task analysis. Testers, programmers, and users collaborate to blend the requirements, design, and test cycles into a tight feedback loop. Learn how to select a subset of system functions to test with a small group of users to get high value information at low cost. Discover how usability testers can take advantage of naïve questions from novice users as well as the tunnel vision and bias of domain experts. Rob shares examples of usability testing for a variety of technologies including mobile and web-based products.More Information
To be most effective, test managers must develop and use metrics to help direct the testing effort and make informed recommendations about the software’s release readiness and associated risks. Because one important testing activity is to “measure” the quality of the software, test managers must measure the results of both the development and testing processes. Collecting, analyzing, and using metrics are complicated because many developers and testers are concerned that the metrics will be used against them. Join Rick Craig as he addresses common metrics—measures of product quality, defect removal efficiency, defect density, defect arrival rate, and testing status. Learn the guidelines for developing a test measurement program, rules of thumb for collecting data, and ways to avoid “metrics dysfunction.” Rick identifies several metrics paradigms and discusses the pros and cons of each.
|Note: Delegates are urged to bring their metrics problems and issues for use as discussion points.|
Github, the new business card for professionals working with software, enables anyone to contribute to existing projects and create new projects. That's why interviewers look to Github to gauge a potential hire's creativity, popularity, capability, and tenacity. To collaborate with developers, today’s testers need Github. Source code for most open source projects is stored on Github.com. That's where issues are filed. Project documents are written within Github as plain-text marked up with formatting codes, and then processed into html for display on github.io. Join Wilson Mar as he examines the major Github repositories testers are expected to know. In this hands-on tutorial, learn special tips testers use to markup text and raise issues. Gain skill at commenting and editing test code increasingly mingled among procedural code. Learn to fork repositories and pull them into a Git client; then using the appropriate text editor, compare changes, add, commit, and push code back into Github for developers to pull.
|Note: Delegates are strongly encouraged to bring a Windows or Mac computer to this tutorial.|
When automated tests are cumbersome to maintain, we often view this as a technical problem. However, an often-overlooked factor is the role that testers play in making automation scalable and maintainable. Test design can help or hurt how automation engineers can implement tests efficiently. If tests are too detailed or lack focus, good automation becomes virtually impossible. In this tutorial—for both testers and automation engineers—Hans Buwalda addresses what it means for test design when tests are to be automated. See why successful automated testing is not so much a technical challenge as it is a test design challenge. Hans shares a template that you can follow to get your tests organized and ready for efficient automation. Whether you work on a traditional or agile project, join Hans to learn how techniques including action-based testing, behavior-driven development, and exploratory testing will help you achieve better test design and great automation results.More Information
Many software systems are required to process huge combinations of input data, all of which deserve to be tested. Since we rarely have time to create and execute test cases for all combinations, our fundamental problem in testing is how to choose a reasonably-sized subset that will find a large percentage of defects and can be performed within the limited time and budget available. Lee Copeland says that pairwise testing is the most effective—but not well-understood—test design technique to deal with this problem. The answer is not to attempt to test all combinations of all values for all input variables but to test all pairs of variables. This significantly reduces the number of tests that must be created and run but still finds a large percentage of defects. Lee demonstrates the effectiveness of pairwise testing through the use of orthogonal arrays, James Bach’s all-pairs algorithm, and Microsoft’s PICT tool. Learn to apply the pairwise testing technique as you work through a number of hands-on exercises.More Information
Business demands and agile development processes are driving the pursuit of faster software releases, spawning a set of new practices called DevOps. At the forefront of the DevOps movement are rapid deployment, continuous integration, and continuous delivery—all of which require a high level of test automation across the application lifecycle. Join Jeffery Payne as he discusses the unique challenges associated with integrating automated testing into continuous integration/continuous delivery (CI/CD) environments. Learn how CI/CD works, appropriate tooling, and test integration points. Find out how to integrate your existing test automation frameworks into a fast release, DevOps environment. In addition to technology issues, Jeffery covers another key to DevOps success: the integration of development, testing, and operations processes—and people—with deep and honest communications among teams. Leave with a roadmap for integrating test automation with continuous integration and delivery so that every stakeholder has strong confidence that changes made to the code base will function as expected.More Information
Test reporting is something few testers take time to practice. But, it's a fundamental skill—and vital for your professional credibility and your own self-management. Many people think management judges testing by bugs found or test cases executed. Actually, testing is judged by the story it tells. If your story sounds good, you win. A test report is the story of your testing. It begins as the story we tell ourselves, each moment we are testing, about what we are doing and why. We use the test story, within our own minds, to guide our work. James Bach explores the skill of test reporting and examines some of the many different forms a test report might take. As in other areas of testing, context drives good reporting. Sometimes we make an oral report; occasionally we need to write it down. Join James for an in-depth look at the art of the reporting.More Information
Anyone who has ever attempted to estimate software testing effort realizes just how difficult the task can be. The number of factors that can affect the estimate is virtually unlimited. The keys to good estimates are understanding the primary variables, comparing them to known standards, and normalizing the estimates based on their differences. This is easy to say but difficult to accomplish because estimates are frequently required even when we know very little about the project—and what is known is constantly changing. Throw in a healthy dose of politics and a bit of wishful thinking and estimation can become a nightmare. Rob Sabourin provides a foundation for anyone who must estimate software testing work effort. Learn about the test team’s and tester’s roles in estimation and measurement, and how to estimate in the face of uncertainty. Analysts, developers, leads, test managers, testers, and QA personnel can all benefit from this tutorial.More Information
Cloud computing is rapidly changing the way systems are developed, tested, and deployed. New system hosting capabilities—software as a service (SaaS), platform as a service (PaaS), infrastructure as a service (IaaS)—are forcing us to review and revise our testing processes. At the same time, cloud computing is affording us opportunities to employ new test tooling solutions, which we call testing as a service (TaaS). In this technical session, Martin Pol and Jeroen Mengerink focus on testing SaaS systems, describing relevant IaaS and PaaS capabilities along the way. They discuss how to test performance of the cloud itself and ways to take advantage of the resource elasticity afforded by cloud computing. Martin and Jeroen explore the risks―some traditional, others completely new—that arise when organizations implement cloud computing and describe the tests you must design to mitigate these risks.
|Note: Delegates attending this tutorial will receive a free copy of the book Testing Cloud Services by Kees Blokland, Jeroen Mengerink, and Martin Pol.|