Getting Started with UI Test Automation

Introduction

If you want to get started in Test Automation, then I find jumping straight into it is the fastest way to learn. Some might suggest you need a certain level of coding knowledge before designing a well constructed automation pack, while I agree that a level of coding knowledge is going to allow you to build a robust framework that is easy to maintain, jumping right into writing automation will quickly give you a foundation which you can build upon.

When you are passionate about something, you learn a lot faster by doing.

Below is a small list of resources I have found useful when I started learning about test automation,  I’ve tried to keep the list of resources to a reasonable size, as if you are provided with an endless number of resources then it makes it harder to work out what resources you should use.

 

Test Automation Resources

C#

Pluralsight

Pluralsight offers great resources that can help you learn about coding. While you have to pay a subscription fee, the quality of courses is excellent. I watched two of John Sonmez courses on Pluralsight that really kicked started my learning in UI Test Automation using C# and Selenium.

 

Automated Web Testing with Selenium by John Sonmez

Learn the basics of automation using Selenium IDE, then moving onto using Selenium Webdriver to create a more robust automation suite, using Selenium, C# and FireFox. This is a great introductory course to automation.

[Link]

 

Creating an Automated Testing Framework With Selenium by John Sonmez

In order to use automation successfully for any decent size project, you need to build an automation framework. This course takes you through how to build a simple framework that helps create more robust tests that enable easier maintenance.

[Link]

 

Youtube

How To Create a Test Automation Framework Architecture With Selenium – John Sonmez

[Link]

 

Acceptance Test Driven Development (ATDD) Tools

Test Driven Development (TDD), Business Driven Development (BDD) and Acceptance Test Driven Development (ATDD) seems to be “the rage” at the moment, a lot of people talk about these techniques and use them for their automation, including myself.  So I think it’s worth while adding in where to learn more about these, the tools below focus more on ATDD and BDD.

 

Specflow – Cucumber for .NET

SpecFlow is a tool for writing tests in Gherkin that the business can understand. Binding business requirements to .NET code

[Link]

 

SpecFlow Tips and Tricks – Jason Roberts

Whether you have recently discovered SpecFlow or have been using it for a while, the tips and tricks in this particular course will help you create more maintainable SpecFlow test automation solutions.

[Link]

 

Automated Acceptance Testing with SpecFlow and Gherkin – Jason Roberts

SpecFlow is a tool for writing tests in Gherkin which the business can understand. Once the tests are written, the steps of these natural language tests can be hooked-up to actual coded automation and tests.

[Link]

 

DaSpec – Gojko Adzic

DaSpec is an automation framework for Executable Specifications in Markdown created by Gojko Adzic.  Markdown is quickly becoming the dominant format for documentation in opensource projects, any text inside a sentence (things like ‘A manager with a Salary of 50000 will get a 10000 bonus’ can be parsed to include “manager”, “50000” and “10000” as arguments, and then nicely report on matching the bonus with expected results.

[Link]

 

Amazon

Fifty Quick Ideas To Improve Your Tests

When using a ATDD or BDD tool such as SpecFlow or cucumber, it’s important that you are able to write well constructed and meaningful requirements. This book will go through ways you can create meaningful and relevant stories that the whole team are able to read and use.

[Link]

 

Java


 

Youtube

Alan Richardson (Evil Tester) has a lot of resources free on his youtube channel, that takes you through creating automation using Selenium and Java.

 

Get Started With Selenium WebDriver Part One – Tool Installs – Alan Richardson (Evil Tester)

[Link]

 

Get Started With Selenium WebDriver Part Two – Create a Test – Alan Richardson (Evil Tester)

[Link]

 

Selenium Simplified – Alan Richardson (Evil Tester)

[Link]

 

Acceptance Test Driven Development (ATDD) Tools

Cucumber

Cucumber is a ATDD, BDD tool that is the Java version of Specflow. Cucumber allows you to write Given, When, Then type scenarios to write up business rules. Your business rules become a living specification, because they’re automatically tested by Cucumber, your specifications are always up-to-date

[Link]

 

Amazon

The Cucumber for Java Book

Behaviour-Driven Development for Testers and Developers . The Cucumber book covers how to use the Cucumber language and how to write well constructed Business requirements using Gherkin

[Link]

 

Blogs

Selenium Simplified – Alan Richardson (Evil Tester)

Automate The Planet – Anton Angelov

 

Code Development Courses

After learning a bit about Test Automation the next important step is to learn more about coding, and the standards to follow.

Test Automation is hard to do right. You need to understand good coding standards so you do not fall into typical traps.

Below are some courses offered by Pluralsight : 

 

C#

C# Fundamentals with Visual Studio 2015 – Scott Allan

 

C# Best Practices: Improving on the Basics – Deborah Kurata

 

Java

Codecademy – Learn the fundamentals of the Java programming language.

 

One Comments

Leave a Reply