Angie Jones is a Senior Automation Engineer at Twitter who has developed automation strategies and frameworks for countless software products. As a Master Inventor, she is known for her innovative and out-of-the-box thinking style which has resulted in more than 25 patented inventions in the US and China. Angie shares her wealth of knowledge by speaking and teaching at software conferences all over the world and leading tech workshops for young girls through Black Girls Code.
Advanced Automation for Agile:
UI, Web Services, and BDD
As testing shifts left in an agile world, teams rely on the fast feedback of automated scenarios for continuous integration/deployment. Automation frameworks must be designed to be stable, robust, and flexible. The traditional way of automating UI scenarios in a silo doesn’t lend itself to agile practices.
In this hands-on workshop, you will build an advanced automation framework capable of keeping up with the demands of agile development. This single framework will be capable of supporting the automation of UI and web services, as well as Behavior-Driven Development (BDD) and Test-Driven Development (TDD) initiatives.
You will learn how to use:
- Advanced concepts in designing your UI automation such as modeling data within your application and componentizing page objects
- TDD with the context of automation development
- BDD specs for test automation
- Cucumber to write steps that execute BDD specs
- Rest-Assured to employ web services to make your tests quicker and less brittle
Ashley Hunsberger is a Product Quality Architect at Blackboard, Inc, a leading provider of educational technology, where she helps establish and drive testing practices throughout the organization. She’s an international speaker that has shared her experiences at industry events including Selenium Conference, Software Test Professionals Conference, and soon at TISQA, SauceCon, Quality Jam, and Better Software Conference/DevOps West. She also enjoys sharing her experiences through writing as a guest blogger for SauceLabs. A proponent of open source, Ashley believes in giving back to the software community and serves as a member of the Selenium Project Steering Committee and now co-chair of the Selenium Conference, with a focus and passion for diversity and inclusion throughout the industry.
Lisa Crispin is the co-author, with Janet Gregory, of More Agile Testing: Learning Journeys for the Whole Team (2014), Agile Testing: A Practical Guide for Testers and Agile Teams (2009), the LiveLessons Agile Testing Essentials video course, and “The Whole Team Approach to Agile Testing” 3-day training course. Lisa was voted by her peers as the Most Influential Agile Testing Professional Person at Agile Testing Days in 2012. She’s a testing practitioner who enjoys helping people find ways to build more quality into their software products. Please visit www.lisacrispin.com and www.agiletester.ca for more.
The Whole Team Approach to Testing in Continuous Delivery
Is your team puzzling over how to feel confident releasing to production frequently with continuous delivery? Delivering reliable and valuable software frequently, at a sustainable pace (to paraphrase Elisabeth Hendrickson), is a worthy goal. DevOps is a hot buzzword, but many teams struggle with how testing fits in, keeps up, and contributes to the DevOps culture.
In this hands-on workshop, participants will have a chance to practice techniques that can help teams feel confident releasing more frequently. You’ll learn how your team can use a test suite canvas to discuss what questions each step in your delivery pipeline needs to answer, to understand the value each step provides. You’ll work in groups to come up with new experiments to help shorten feedback cycles, make sure all essential types of testing are done continually, and fit testing into the continuous world. You’ll learn that there IS a “test” in “DevOps”.
Whether your tests take minutes or days, and whether your deploys happen hourly or quarterly, you’ll discover benefits. You’ll participate in a simulation to visualize your team’s current path to production and uncover risks to both your product and your deployment process. No laptops required, just bring your curiosity.
- Continuous delivery concepts at a high level, and the differences between continuous integration and continuous delivery
- Common terminology and a generic question list to engage with pipelines as a practice within your team
- How to use the test suite canvas to design a pipeline that gives your team confidence to release frequently
- Experience in analyzing pipelines from different perspectives to create a layered diagram of feedback loops, risks mitigated, and questions answered
- Ways your team can design experiments to address the many challenges of testing in a continuous world
Anne-Marie Charrett is a software tester, trainer and coach with a reputation of excellence and passion for quality and the craft of software testing. An electronic engineer by trade, software testing chose her when she started testing protocols against European standards. Anne-Marie’s work is grounded in experience having recently worked as Head of Engineering at Tyro Payments, Sydney Australia. She has worked with the best in both waterfall and agile delivery methods with an emphasis on XP. She has worked with developers and testers on improving quality in engineering using practices such on TDD, Pairing, Continuous Delivery, Exploratory Testing and DevOps
Anne-Marie advocates a whole team approach to quality. She sees software testing as a skilled activity that many might perform. She trains & coaches teams to help embrace this approach to quality with a contextual mindset.
Anne-Marie created and lectured the software testing module at University of Technology, Sydney. She runs the Quality Engineering Meetup in Sydney.
The coaching that I do focuses on improving skill through questioning and practice to develop a deep understanding of testing and how to perform it.
A coach can learn how to help both testers and developers to:
- Sharpen reasoning and critical thinking
- Explain your testing and why you tested
- Understand and deal with ambiguity
- Deepen your understanding of the testing you perform
The coaching model that I use is being developed by myself and James Bach. It uses Socratic questioning to probe testing knowledge, challenging developers and testers alike to think deeper and through practice come to a greater understanding of what testing is as well as how to test in a better way.
The intent is for both student and coach to leave coaching feeling enthusiastic about testing, with the motivation to continue self-learning.
The tutorial will examine the coaching model. We will look at the following:
- Socratic Questioning
- Coaching Task
- Managing a coaching session
- Evaluating Coaching
Attendees will have the opportunity to observe, analyse, practice and steer coaching sessions throughout the day.
This workshop is suitable for testers, developers and leads who want to learn how to coach team members in either a remote or local environment.
Jan works as a Tester at eBay in Berlin, Germany.
He has been in the software industry for more than 10 years working in different roles in the software development process. Jan started as a developer and quickly learned to appreciate skilled testers. During the last years he worked as a tester looking into exploratory testing and how automation can support testing.
At the moment he is working in an agile team performing testing tasks while also writing production code and educating the team and himself about testing.
Traditional Setup vs. Pairing vs. Mobbing – An Experiment for Testers and Developers
Having worked in software for over a decade I have come into contact with many ways of coding and testing. Together with a colleague I have given session on how pairing can improve productivity – and in many situations I believe it can indeed do that. But should testers and developers pair on things or should they be separated by the proverbial fence? What about working in large groups? Where is the data?
This is where you come in. Be part of something revolutionary while learning new techniques and ways of working.
In this workshop you will experience to work in 3 configurations: as a lone tester/developer, in pairs and in mobs. You will test, fix bugs and enhance a web application. Together, we will compare your experiences and will try to draw conclusions about which configuration works best in which situation.
- Learn the basics of pairing
- Learn the basics of mob programming/mob testing
- Learn how to use Chrome Dev Tools to inspect the code and make code changes
- How can we find bugs earlier than in the traditional/evil testing phase?
- How can we collaborate in order to bridge the gap between developers and testers?
- Learn which way of working might be suitable for what kind of task
Attendees should bring a laptop with the Chrome browser. The workshop can be attended by developers, testers and also product managers.
Raj Subramanian a former developer, moved to testing to focus on his passion. Raj currently works as a Developer Evangelist for a company that provides AI based software testing solutions for clients.
Raj also provides mobile training and consulting for different clients. He actively contributes to the testing community by speaking at conferences, writing articles, blogging, making videos on his youtube channel and being directly involved in various testing-related activities.
Raj currently resides in Chicago and can be reached at [email protected] His website is www.rajsubra.com and twitter handle is @epsilon11. His videos on testing, leadership and productivity can be found here: https://www.youtube.com/channel/UCoeNB2yyzE5WQDKeJCF0iOQ
De-Mystifying Mobile Application Testing
As mobile devices, tools, operating systems, and web technologies rapidly evolve, testers must quickly adapt their thinking in this changing domain. Testers often struggle to find important vulnerabilities and bugs in mobile applications due to lack of guidance, experience, and the right resources. I was one such tester. During my career in the mobile testing field, I’ve come across numerous bugs related to mobile applications. Looking at these bugs, I started categorizing them, and started finding patterns in them in terms of how different types of testing approaches helped me to find different type of defects. I also started realizing that, anyone could start doing mobile testing if they understand some basic concepts involved in it. Mobile Testing is NOT complicated.
I have often heard testers say mobile testing entails a totally different thought process from other types of testing, and they believe they have to take extra courses and get certifications to be proficient in it. There are even testers who think they are not qualified to do mobile testing, although they have been testing other applications for more than a decade and have gained a lot of experience during those years. This workshop will help to re-assure testers that, the concepts, approaches and strategies testers use when testing other applications can be applied to mobile as well.
- Basics of the mobile eco system
- How to set up a mobile testing process quickly?
- Different testing approaches to get quick feedback on the mobile application
- Different types of testing to do with your mobile applications
- How you can make your mobile applications smarter?
- What are the cool things happening in mobile and how it is relevant to our testing
- Session based exploratory testing in mobile
- Why mobile testing is not that different from testing other applications
The workshop will have multiple hands on exercises, live demos and screenshots for the attendees to better relate to the above topics.
Pre-requisites for the workshop
- Need to have one mobile device (iOS/Android)
- Need to install Xcode if using mac
- Need to install Android Studio, IntelliJ or Eclipse for non-macs
- Install SDK Platform Tools from this link – https://developer.android.com/studio/releases/platform-tools.html
NOTE: If you face any problem while doing any of the above pre-requisites, do not worry. We will fix it during the workshop
Richard Bradshaw is an experienced tester, consultant and generally a friendly guy. He shares his passion for testing through consulting, training and giving presentation on a variety of topics related to testing. With over 12 years testing experience, he has a lot of insights into the world of testing and software development.
Richard is a very active member of the testing community. He is the co-creator of the Automation in Testing (Ait) namespace, currently the BossBoss at Ministry of Testing, blogs at http://thefriendlytester.co.uk, tweets as @FriendlyTester and also the creator of the YouTube channel, Whiteboard Testing.
Automation in Testing – Check Design
Automation in Testing (AiT) is a new namespace designed by Richard Bradshaw and Mark Winteringham. The use of automation within testing is changing, and in our opinion, existing terminology such as “Test Automation” is tarnished and no longer fit for purpose. So instead of having lengthy discussions about what Test Automation is, we’ve created our own namespace which provides a holistic experienced view on how you can and should be utilising automation in your testing.
Automated Check Design is the process of designing which checks should be automated, and then how to go about designing them before we implement them. Automated Checks is our preferred terminology within AiT, but if it leaves you confused, change check to test, and re-read it, we’ll be talking about the same thing.
What You Will Learn On This Course
The first half of day one is all about what and why. We’re going to explore which automated checks should be created, and in turn, which shouldn’t and importantly with both, why?
The second half of the day will be spent on how we go about implementing checks, from a design angle. Looking at all the factors that make up an automated check.
By the end of the tutorial, attendees will be able to:
- Dissect existing automated checks to determine their purpose and intentions
- Show the value of automated checking
- Describe the anatomy of an automated check
- Discover opportunities to design automation to assist testing
- Distinguish between a check that provides value and one that doesn’t
- Appreciate that succeeding with automation requires far more than coding skills
What You Will Need To Bring
Please bring a laptop, OS X, Linux or Windows with all the prerequisites installed that will be sent to you.
Dawn Haynes is the Quality and Testing Yogini for PerfTestPlus, Inc. A highly regarded
trainer of software testers, Dawn blends her 30+ years of experience with a real-world
view to provide testers with tools and techniques to help them generate new
approaches to common and complex software testing problems. Passionate about
improving the state of testing, Dawn engages with testers through writing, social media,
training, meetups, and testing conferences worldwide. Selected in 2010 as one of
twelve women of influence in Software Test and Performance magazine, Dawn is a
founding member of the International Society for Software Testing, and a lifetime
member, former secretary, and director of the Association for Software Testing.
How to Break Software
Have you ever worked on a project where you felt testing was thorough and complete—all features were covered and all tests passed—yet during the first week of production use, the software had serious issues and problems? Commonly, usability, performance, and robustness issues are among those key areas that are not targeted by requirements and often missed in testing.
Join Dawn Haynes to explore how to more effectively inject robustness testing into your projects to uncover those issues before release. Dawn shows you how—by expanding basic tests and incorporating specific robustness attacks—you can catch many defects that are commonly written, commonly missed, and tend to show up early in production. Dawn also proposes strategies for making robustness risks a project-level concern so these common issues get the priority they deserve and are evaluated before release.
Please bring a laptop with an application you wish to target for testing already set up and configured. Plan to do some exploratory testing and look for opportunities to “attack” your software during the session, as well as attempt a number of attacks from James Whittaker’s book, How to Break Software.
Previous attendees of this workshop have found many valuable bugs to report to their team during the session, and gained valuable insights to raise robustness awareness within their projects. What will you catch at CAST 2018, beachside in Florida?
Rob Sabourin has more than thirty-five years of management experience leading teams of software development professionals.
A highly-respected member of the software engineering community, Rob has managed, trained, mentored, and coached hundreds of top professionals in the field. He frequently speaks at conferences and writes on software engineering, SQA, testing, management, and internationalization.
Rob authored I am a Bug!, the popular software testing children’s book. He works as an adjunct professor of software engineering at McGill University; and serves as the principal consultant (and president/janitor) of AmiBug.Com, Inc.
Testing Fundamentals for Experienced Testers
Testing fundamentals can help experienced testers expose more bugs with less effort.
Through years of experience you have mastered testing in your domain. But are important bugs still slipping by? Can you transfer your skills to new applications? Why can’t others get the job done? Test
fundamentals can help.
Rob Sabourin breaks testing fundamentals into five areas, philosophy, scientific method, problem solving, math and rhetoric. Test philosophy improves purposeful testing revealing truths about what testing can and cannot do. Scientific method provides frameworks to advance knowledge confirming or refute conjectures while designing great test experiments. Many problem solving strategies exist based on modeling knowledge and the unknown. Math (discrete, logic, combinations and probability) improves test design and result interpretation. Rhetoric skills improve tester’s communication, argumentation and persuasion.
Applying testing fundamentals focuses testing, closes gaps, eliminates waste and helps you do the right things well. Rob teaches you “how to know about what to test” and “what to know about how to test”.