Creating a Test Automation Portfolio

February’s post will focus on creating a test automation portfolio inspired by Beth Marshall and Angie Jones’ excellent articles that can be found here and here.

The idea is relatively straightforward; to create a repository on GitHub that shows off all of your fancy automation skills in a variety of different applications. Think web browser based automation using Selenium, API automation using Postman, native mobile device automation using Espresso or XCUI. The possibilities are endless, the only thing that could limit how far you go with a test automation portfolio is how far down the rabbit hole you want to go.

So, what are the benefits of creating a test automation portfolio? Why should I spend my time and effort putting one together?

Coding Skills

Speak to anyone who has worked in testing over the past few years and chances are they’ll have some form of experience with test automation. Love it or loathe it test automation is here to stay and traditionally manual testers will have to diversify their skills to include automation. I say this as a traditionally manual tester from a non-technical background, my focus this year is to become more technical and creating a test automation portfolio is the first step on that journey.

Interviews

Whether you’re applying for your first test role, or applying for a more automation-specific role, a test automation portfolio is a great way to show off your coding skills to a prospective employer. Your portfolio becomes a talking point, better yet it’s something that is inherently ‘yours’. Your coding skills and experience with different frameworks are no longer speculative, they become tangible things that you can prove.

T-Shaped People

If, like me, you’re at the start of your journey to becoming more technical, you probably spend more time thinking about which new technology you should learn than you do actually learning that technology. A test automation portfolio encourages you to dip your toes into lots of different frameworks, proving that you can apply yourself to various different aspects of test automation. You then become ‘T-Shaped’; you have a depth of knowledge in testing and a breadth of knowledge in test automation solutions.

Ew, I Don’t Like That

By creating a test automation portfolio you’re likely to come across at least a few technologies or frameworks that you’ve never worked with before. Aside from the obvious benefit of increasing your skills in this area you’re also taking these frameworks and technologies for a ‘trial run’, dipping your toes into the water before deciding to apply for a role that uses a particular approach exclusively or before encouraging your team to adopt something. You might find a passion for it. Equally, you might hate it. If nothing else, a test automation portfolio will help you to decide what you loathe and what you enjoy.

Enthusiasm

Above all else and, in my opinion, the best thing about a test automation portfolio is that it displays a real passion for the craft. By creating a portfolio you’re not just speculatively saying that you ‘could do automation given the time’ or that you’ll ‘do automation if you have to’, you’re proving that you can do it.

So there’s my opinion on why you should build a test automation portfolio, but how am I actually going to do it? So far I have pretty basic experience with using Cypress and Selenium for web browser automation so that will be my starting point, something I’m relatively comfortable with. After that I’ll move into API automation with Postman and further down the line I’ll look at native device automation. My goals for 2021 are as follows;

  1. Create a Cypress/JavaScript based automation solution using demo.opencart.com as a sample website.
  2. Do the same thing again using Selenium/Java because I’ve never learned Java.
  3. Create a Postman based automation solution using Restful Booker as a sample API. Try to do some stuff with mocks, try to use Newman for the CLI stuff because it looks cool.

That’ll do in the short term, but should I really lose myself in it I’ll also try the following;

  1. Do something with Jenkins, no idea what yet.
  2. Create an Espresso based automation solution using something on APKPure because I’ve got an old spare Android phone and I’ve never looked at native stuff before.
  3. Create an XCUI based automation solution because Apple might take over the world one day and they’re less likely to exterminate me if I know how to automate their testing.

There we have it, my automation goals for 2021! Be sure to check back later in the year to see how I got on, it’s more than likely that each of these solutions will become a blog post in itself.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s