Test Automation Framework (Selenium with Java) — Genesis or What To Automate?

Cover image containing slogan “create test automation framework with Tomasz Buga Software Development Engineer in Tests”

S01E01 of the Test Automation Framework series about everything you’ll need to set up the nice, simple, yet sophisticated framework.

Covered with clear explanations and pretty illustrations.

Sounds like fun? Cool. Now, please, fasten your seatbelts because you’re here for a ride.

S01E02 — Test Automation Environment and Tools

S01E03 — The First Selenium Test Case

S01E04 — Selenium Foundations Revisited

S01E05 — Page Factory and Elements Related Exceptions

S01E06 — Page Loading Strategies and Waits

S01E07 — Translating JIRA with Selenide (with Exercises)

S01E08 — JIRA, Selenide, Complex SQL, Java Objects with Equals & HashCode (with Exercises)

S01E09 — Code Review and Refactoring (Part 1)

S01E10 — Code Review and Refactoring (Part 2)

S01E11 — Allure in Action

Test Automation Framework — Genesis hand written on the left side, “Understanding is the key” title on the right side, and “Tomasz Buga software development engineer in tests” logo on the bottom of the page

I could’ve started with the cliché like “today we’re going to cover Selenium & Java test automation framework”. But I don’t want to do that. Don’t get me wrong, eventually, we’re going to cover that part as well, but what I want to pinpoint is that you have to understand why you’re doing tests automation in the first place.

Why do you even test that tenth Angular’s form group this week? You’d probably answer with something like “because I need to be sure it’s not messed up”, or if you’re a little bit more cynical — “because I need the money, man”. And I think there’s nothing wrong with both of those attitudes. But, it’s simply not enough, if you’d want to write tests that represent high Return on Investment (ROI).

ISTQB Test Automation Engineer syllabus provides useful tips on what to consider before automate-everything-frenzy.

Excerpt from ISTQB Test Automation Engineer syllabus (2016)

Okay, that’s a pretty huge knowledge bomb, but I’ve found another, maybe a little bit more approachable source.

Excerpt from Ranorex’s Blog (10 Best Practices in Test Automation #1: Know What to Automate)

Also, there is this cool thing called Risk Assessment Matrix that is extremely useful in… risk assessment, duh.

Risk assessment matrix visualisation. Rows described as probability with values, as follows: certain, likely, possible, unlikely, rare, eliminated. Columns described as Harm Severity with values as follows: negligible, marginal, critical, catastrophic.
Risk Assessment Matrix determines Risks Values based on their Occurrence Probability and Potential Harm Severity

As you can see there are plenty of things to consider to write proper test automation scripts. Or not to, when it’s not the best choice ROI-wise. You can save this article for future reference (I know I will, lol).

If you’d like to learn more feel free to head out for the ISTQB Test Automation Engineer syllabus, as it’s a nice piece of introductory material and covers everything you’d need to know to start as with the Test Automation for real.

I know, I know — there was no code at all. But, you have to realize that in Software Development not everything is about the Code. From my perspective it’s even more about thinking before acting, understanding Why instead of How (but don’t worry — we will cover How part of Test Automation Framework in the upcoming parts) and simply being sure that we’re “doing the right thing” and not only “doing the thing right”.

If you’d have any questions regarding the theoretical part of Test Automation — please share your thoughts in the comments section below.

Stay safe!

All the best,

Tomasz Buga, SDET



All illustrations made by Tomasz Buga



Software Development Engineer in Tests. Passionate about programming. Experienced, former employee of the insurance industry. Graphic designer by choice.

Love podcasts or audiobooks? Learn on the go with our new app.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store
Tomasz Buga

Tomasz Buga


Software Development Engineer in Tests. Passionate about programming. Experienced, former employee of the insurance industry. Graphic designer by choice.