You are on page 1of 8

2/19/2021 How Much Java Do I Need To Learn For Mastering Selenium?

| LinkedIn

Search
Home My Network Jobs Messaging Notifications

How Much Java Do I Need To Learn For


Mastering Selenium?
Published on August 6, 2015

Alex Siminiuc 22 articles Follow


SDET at Blacksmith Technologies

I saw this question a few days ago on a testing forum.

My initial response to it was "as much Java as you can learn".

What I meant is that since the programming language is the most important skill for test
automation, everyone should learn it as much as possible.

While I still like my response, it is not helpful for other testers.

First, I want to say something about the question.

It was asked by a manual tester that wants to learn test automation.

It implies that mastering Selenium happens after learning some Java programming.

A similar question could be:

I don't know how to swim but how much swimming do I need to learn to compete for
Olympics?

To go from no swimming skills to just decent


swimming is very difficult.

Going from decent swimming to mastery of


swimming is just not realistic for most of
people.
Like Comment Share 29 · 4 comments
Messaging

https://www.linkedin.com/pulse/how-much-java-do-i-need-learn-mastering-selenium-alex-siminiuc/ 1/8
2/19/2021 How Much Java Do I Need To Learn For Mastering Selenium? | LinkedIn

I picked
Search
swimming as a skill example as the process of learning test automation is similar
Home My Network Jobs Messaging Notifications
to learning any other skill.

Mastering a skill usually means that you are at the highest level possible for it.

This does not happen obviously through just learning as a lot of practice and self-
improvement are needed.

And time, perseverance and patience.

Going from a manual tester to a test automation engineer that masters Selenium is a very
difficult goal.

Test automation engineers that master Selenium are usually software developers in test.

Meaning professional developers.

Still, how much Java do you need to master Selenium?

Between manual tester with no programming skills and test automation engineer that
masters Selenium, there are a few different levels.
Messaging

https://www.linkedin.com/pulse/how-much-java-do-i-need-learn-mastering-selenium-alex-siminiuc/ 2/8
2/19/2021 How Much Java Do I Need To Learn For Mastering Selenium? | LinkedIn

Search
Home My Network Jobs Messaging Notifications

LEVEL 1 - Learn to write automation scripts with Selenium 

Java basic knowledge is sufficient for this.

You will need to learn about

variables

fundamental data types (String, Integer, Boolean) and their operators

conditional operators

string methods

conditional statements (if/else, switch)

looping statements (for, while)

arrays

packages
Messaging

https://www.linkedin.com/pulse/how-much-java-do-i-need-learn-mastering-selenium-alex-siminiuc/ 3/8
2/19/2021 How Much Java Do I Need To Learn For Mastering Selenium? | LinkedIn

exceptions
Search
Home My Network Jobs Messaging Notifications

lists

read and write files

use Java API

After learning the basic concepts, you should be able to create simple test automation scripts
with Selenium.

These scripts will include WebDriver API which is ok while learning Selenium.

But as soon as you start having more and more scripts, the scripts maintenance will become
an issue.

LEVEL 2 - Make your test automation code re-usable

Having a large number of test automation scripts that include WebDriver API poses an issue
from the maintenance point of view.

Since each script is independent and some scripts may just repeat the same lines of code,
changing the test scripts for improvements or because of bugs is difficult to do.

The more complex test scripts are, the harder to maintain.

And we should remember that the biggest failure point in test automation efforts is test
scripts complexity.

So we need to reduce the test scripts complexity and make scripts maintenance easier.

For these purposes, you need to start learning the Java object oriented programming
concepts.

This includes learning about


Messaging

https://www.linkedin.com/pulse/how-much-java-do-i-need-learn-mastering-selenium-alex-siminiuc/ 4/8
2/19/2021 How Much Java Do I Need To Learn For Mastering Selenium? | LinkedIn

creating classes and objects


Search
Home My Network Jobs Messaging Notifications

class fields

methods and constructors

method overloading

set/get methods

class/field/method modifiers

The object oriented programming concepts will help implementing the page object model
for your test automation scripts.

This means that you will create classes that correspond to site's pages (or components of site
pages) and move the WebDriver API code from the test scripts to the page object model
classes.

By doing this, you keep your test scripts free of any direct interaction with the site.

The interaction with the site is being done in the page object classes.

LEVEL 3 - Start implementing test automation frameworks

After having page object classes, you will want to start creating your test automation
framework.

The framework should be useful not only for one site but any number of sites.

And possibly for mobile applications as well.

You need to learn the Java advanced concepts like


Messaging

https://www.linkedin.com/pulse/how-much-java-do-i-need-learn-mastering-selenium-alex-siminiuc/ 5/8
2/19/2021 How Much Java Do I Need To Learn For Mastering Selenium? | LinkedIn

Search
class inheritance
Home My Network Jobs Messaging Notifications

base classes

method overriding

polymorphism

interfaces

static classes

inner classes

abstract classes

LEVEL 4 - Improve your test automation framework with code


refactoring techniques and design patterns

Code refactoring will help making your test automation framework simpler and more
efficient.

Design patterns will provide proven ways of solving common development problems.

Are there more levels? 

Yes. Learning a skill never ends. 

There is a long way from manual testing to mastering test automation with Selenium.

But taking it a step at a time will eventually get you there.

Messaging

https://www.linkedin.com/pulse/how-much-java-do-i-need-learn-mastering-selenium-alex-siminiuc/ 6/8
2/19/2021 How Much Java Do I Need To Learn For Mastering Selenium? | LinkedIn

With perseverance and lots of patience.


Search
Home My Network Jobs Messaging Notifications

Alex | Test Automation | For Manual Testers

Have a test automation question or problem? Schedule a free call with me at


https://www.sohelpful.me/alexsiminiuc

Report this

Published by
Alex Siminiuc 22 articles Follow
SDET at Blacksmith Technologies
Published • 5y

Reactions

+17

4 Comments
Most relevant

Add a comment…

Simon Rigler • 3rd+ 5y


Program Manager at IQVIA

This is a REALLY great post. My team and I are just starting this journey, I really like how you've laid this post
out and broken the challenge down into bite-size goals, and especially calling out the use of the word
'master'. I certainly get irritated by discussions where learning Selenium (or any programming language,
software, tools etc) is seen as a one-off, almost binary activity.

Like Reply · 1 Reply

Alex Siminiuc • 2nd 5y


SDET at Blacksmith Technologies

Thanks, Simon.

I am glad that you like the article and find it useful.

Like Reply

Ravinder Rayat • 3rd+ 5y


Senior Technical Support Specialist at Bayshore HealthCare
Messaging
Well said..
https://www.linkedin.com/pulse/how-much-java-do-i-need-learn-mastering-selenium-alex-siminiuc/ 7/8
2/19/2021 How Much Java Do I Need To Learn For Mastering Selenium? | LinkedIn

Search Like Reply · 1 Reply


Home My Network Jobs Messaging Notifications

Alex Siminiuc • 2nd 5y


SDET at Blacksmith Technologies

Thanks, Ravinder.

Like Reply

Alex Siminiuc
SDET at Blacksmith Technologies

Follow

m Alex Siminiuc

evelopers are common, Want better speed for Selenium Part-time test automation is bullshit Your testing job, manual or
full stack SDETs? tests? Run them in parallel. automated, will be outsourc
Alex Siminiuc on LinkedIn
automated. Sooner that you
uc on LinkedIn Alex Siminiuc on LinkedIn
Alex Siminiuc on LinkedIn

rticles

Messaging

https://www.linkedin.com/pulse/how-much-java-do-i-need-learn-mastering-selenium-alex-siminiuc/ 8/8

You might also like