Automation in Testing 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.
Automation doesn’t tell you:
- what tests you should create
- what data your tests require
- what layer in your application you should write them at
- what language or framework to use
- if your testability is good enough
- if it’s helping you solve your testing problems
It’s down to you to answer those questions and make those decisions. Answering those questions is significantly harder than writing the code. Yet our industry is pushing people straight into code and bypassing the theory. We hope to address that with this course by focusing on the theory that will give you a foundation of knowledge to master automation.
This is an intensive three-day course where we are going to use our sample product and go on an automation journey. This product already has some automated tests, it already has some tools designed to help test it. Throughout the three days we are going explore the tests, why those tests exist, our decision behind the tools we chose to implement them in, why that design and why those assertions. Then there are tools, we’ll show you how to expand your thinking and strategy beyond automated tests to identify tools that can support other testing activities. As a group, we will then add more automation to the project exploring the why, where, when, who, what and how of each piece we add.
The first half of day one is all about the current state of automation, why AiT is important and discussing all the skills required to succeed with automation in the context of testing. The second half of the day will be spent exploring our test product along with all its automation and openly discussing our choices. Reversing the decisions we’ve made to understand why we implemented those tests and built those tools.
By the end of day one, attendees will be able to:
- Survey and dissect the current state of automation usage in the industry
- Compare their companies usage of automation to other attendees
- Describe the principles of Automation in Testing
- Describe the difference between checking and testing
- Recognize and elaborate on all the skills required to succeed with automation
- Model the ideal automation specialist
- Dissect existing automated checks to determine their purpose and intentions
- Show the value of automated checking
The first half of day two will continue with our focus on automated checking. We are going to explore what it takes to design and implement reliable focused automated checks. We’ll do this at many interfaces of the applications. The second half of the day focuses on the techniques and skills a toolsmith employs. Building tools to support all types of testing is at the heart of AiT. We’re going to explore how to spot opportunities for tools, and how the skills required to build tools are nearly identical to building automated checks.
By the end of day two, attendees will be able to:
- Differentiate between human testing and an automated check, and teach it to others
- Describe the anatomy of an automated check
- Be able to model an application to determine the best interface to create an automated check at
- How to discover new libraries and frameworks to assists us with our automated checking
- Discover opportunities to design automation to assist testing
- An appreciation that techniques and tools like CI, virtualisation, stubbing, data management, state management, bash scripts and more are within reach of all testers
- Propose potential tools for their current testing contexts
We’ll start day three by concluding our exploration of toolsmithing. Creating some new tools for the test app and discussing the potential for tools in the attendee’s companies. The middle part of day three will be spent talking about how to talk about automation. It’s commonly said that testers aren’t very good at talking about testing, well the same is true about automation. We need to change this.
By the end of day three, attendees will be able to:
- Justify the need for tooling beyond automated checks, and convince others
- Design and implement some custom tools
- Debate the use of automation in modern testing
- Devise and coherently explain an AIT strategy
Are you currently working in automation?
If yes, we believe this course will provide you with numerous new ways to think and talk about automation, allowing you to maximise your skills in the workplace
If no, this course will show you that the majority of skill in automation is about risk identification, strategy and test design, and you can add a lot of value to automation efforts within testing.
I don’t have any programming skills, should I attend?
Yes. The online courses will be made available several months before the class, allowing you to establish a foundation ready for the face to face class. Then full support will be available from us and other attendees during the class.
I don’t work in the web space, should I attend?
The majority of the tooling we will use and demo is webbased, however, AiT is a mindset, so we believe you will benefit from attending the class and learning a theory to apply to any product/language.
I’m a manager who is interested in strategy but not programming, should I attend?
Yes, one of core drivers to educate others in identifying and strategizing problems before automating them. We will offer techniques and teach you skills to become better at analysing your context and using that information to build a plan towards successful automation.
What languages and tools will we be using?
The current setup is using Java and JS. Importantly though, we focus more on the thinking then the implementation, so while we’ll be reading and writing code, the languages are just a vehicle for the context of the class.
Required equipment: Please bring a laptop, OS X, Linux or Windows with all the prerequisites installed that will be sent to you.
Trainer: Richard Bradshaw
Richard Bradshaw is an experienced tester, consultant, trainer and generally a friendly guy. He shares his passion for testing through consulting, training and giving presentations on a variety of topics relating to testing. With over 12 years testing experience, he has a lot of insights in the world of testing and software development.
Richard is currently the BossBoss at the Ministry of Testing, co-creator of the Automation in Testing (AiT) namespace, blogs at https://automationintesting.com and https://thefriendlytester.co.uk. Tweeting over at @FriendlyTester and also the creator of the YouTube channel Whiteboard Testing.