Web UI
In 3 months you will learn how to write tests easily, build stable locators, effectively expand coverage, write high-quality code by following the best development practices and the PageObject pattern
test automation
With SelenideJs + JavaScript/TypeScript
Who may benefit?
Beginners in Test Automation
Engineers immediately lay the foundation of beneficial principles, tricks, and approaches in writing tests and code. Learn in practice - when to conduct refactoring and why, instead of mindlessly memorizing templates.
Manual Test Engineers
Will learn how to start building automated testing of web applications and expand automated coverage correctly. They will understand what is worth automating and what is not.
Test Automation Engineers (Mid-to-Sr level)
Will be able to structure knowledge and patch holes according to best practices and principles, clean their knowledge base from existing not the most effective habits;)
Starters in IT
Will be able to practice in performing real testing and test automation tasks, test their strength to determine how to develop their skills further.
Howto articles. Tasks. Individual feedbacks.
Video-reviews of common mistakes.
Support in chat. FAQ
Basic theory
Start with basic "theory" in the format of article available in your personal account.
Practice in real cases
Try to solve with no help, simulating the real case while building test automation on a project.
Practical knowledge through Code Review
On the first version of the solution, get individual feedback for further improvement.
... till ideal solution
Elaborating and improving the solution, go through a series of recorded video-reviews of common mistakes, until a result achieved that meets the best principles and practices for writing tests. According to the final version of the solution, get another individual feedback.
What's in Pandora's box?
There will be nothing in the course...
that you can quickly google and get a ready-made recipe from StackOverflow or a detailed video guide on youtube, or chat response, for example – how to configure a grid, how to create a remote driver, how to configure parallel execution, how to setup Allure reporting, how to read parameters from the environment, how to create a "job" on Jenkins and so on.

There will also be nothing on the basics of Java and setting up the environment. Fortunately, there are enough materials on the Internet.
But there will be a lot of nerdiness on...
refactoring, self-documented code, DRY, KISS and YAGNI principles, OOP nuances, stable locators, PageObjects, and most important – what to test, how and when, how to efficiently extend coverage with tests, that are easy to write and maintain.
– Course topics
SelenideJs and efficient element location
  • Introduction to SelenideJs.
  • Stable locators (CSS и XPath).
  • Tests naming and organisation
  • Basic refactoring of complex XPath-selectors.
Start – Proof of Concept
  • Basic requirements to tests, their steps and assertions.
  • End-to-End-scenarios.
  • Priorities and planning coverage.
  • Decomposing locators.
  • Typical issues when finding elements.
  • Waiting for page loading.
  • Implicit assertions in End-to-End tests.
  • Comments and self-documented code.
Retrospective – tests refactoring
  • DRY and KISS principles.
  • Hiding technical details. Context.
  • Independent tests.
Harden – extend coverage
  • Atomic tests.
Structure and reuse. PageObject pattern
  • Code Smell: Large Class.
  • Refactoring: Extract Class.
  • Composition.
  • PageObject pattern and its variations.
Start курса
March 17th
Whole course, 3 months
250 usd
7100 uah
After completing the course, access to its materials remains
Frequently asked
questions –
What are the prerequisites for learning on the course?
How to prepare?
In order to study the course materials comfortably, it is important to master the basics of Java programming before. You can prepare by going through the recommended materials on JavaScript and/or TypeScript basics. Those who are familiar with programming in another language should be able to quickly jump in, having a quick look at the JavaScript (and/or TypeScript) syntax and having a little practice on the simplest JavaScript tasks (or TypeScript).
Is completing a course program enough to get a job as a test automation engineer?
In general, it is not enough. The program of the course will help you to "become an engineer", learn to "get things done", "solve problems", "find answers to questions", but does not cover all the knowledge that is usually required by an automation engineer when hiring.

In addition to the course program, it's worth

... initially:

... definitely:

... preferably:
  • know how to set up on containers – Grid/Selenoid and Jenkins
  • parallelize tests
  • configure tests reporting
  • organise test suites with markers/tags
  • know how to write API-tests

... may be useful:
  • know about performance testing

At the same time, there are cases when people get a job without the above knowledge and deal with everything as needed. "Deal with everything as needed" is exactly what you can learn by going through the program of this course;)
How do you support two languages in the course - JavaScript and TypeScript?
The materials are available for both languages, where appropriate (sometimes they are same for. both languages). You can choose the language you are interested in, when passing the course - JavaScript or TypeScript.
What is the process of task verification?
The main responsibility for checking their assignments is held by the students themselves. Each solution can be independently verified and improved according to the recorded video-reviews of common mistakes.

But before and after passing such a "video-review", the student receives individual feedback on the first version of his solution and the final one (after working out his decision according to video-reviews). A review usually looks either as an audio-message from 2 to 10 minutes or as a series of text messages that briefly describe the mistakes encountered in the solution.
What to do when only two individual reviews for each my solution is not enough for me?
It really can be. Although there are video materials for self-checking your solutions by analyzing common mistakes, and two individual reviews by the course curator – for the solution before watching the video materials and for the correspondingly improved solution - after watching. Depending on the individual characteristics of the perception of a student it may not be enough to fully understand the topic of the lesson. Someone does not perceive the information well on the recorded materials, and an even more individual approach is needed, and most importantly – live communication with the curator/mentor. Someone has a slightly different rate of perception - faster, or slower. Someone needs more reps. Someone needs the information in a more concise format.

We do our best to prepare the materials as universally as possible while going for certain simplifications. Unfortunately for the declared price, we cannot afford to devote more time to checking tasks. As an exception, we can check one or more tasks more than twice, so that it is easier for you to feel and find your pace of training, and adapt to the maximum. And then, if you need more than two task reviews, you can simply pay for the course again to increase the number of task tests from 2 to 4. And so on, by analogy.
I want only access to materials, without individual reviews, and cheaper :)
Access to materials costs $ 35 at the exchange rate in hryvnias. Materials will be opened gradually, as well as in the full version of the course (see below the answer to the question "When do you open access to materials"). Bear in mind that in this case you only buy materials for the course version in one programming language. By purchasing the full version, and having completed all the tasks, you would have gained access to the materials of the course version for other programming languages available on this site.

So far, direct purchase through the site of access to materials has not been implemented. Contact us and leave a request. We will contact you shortly to discuss the details.
What is a video-review of common mistakes?
This is a series of video recordings in the format of "screencasts" for various common mistakes often encountered in solutions, with detailed comments by the author to the code. The author often mentions several related mistakes along the way, and also, sharing some hints, suggests the student pause the video, think about improving the solution on their own, and then continue watching, finally checking himself.
How many video-reviews will be and of what duration?
For each task out of 14, there will be about 10 video recordings with a total duration of up to an hour, depending on the complexity of the tasks. These are approximate numbers. The number of entries grows with the number of students who completed the course. New mistakes constantly appear;)
How long does the studying take?
The education lasts up to 3 months, depending on how the group will cope with the tasks. After the deadline, access to the materials remains.
Does the course imply urgent assignments?
Now the rate is fairly moderate. For each task of 14, about a week is given, depending on the complexity of the task and the enthusiasm of the group. We adapt to more or less active students. We are not waiting for the "slowpokes":), but they always have the opportunity to catch up until 3 months are over. After the end of the period, you won't get individual reviews anymore, but you'll still have access to all materials, including video reviews of common mistakes for self-checking. Also, the course is quite affordable and you can always buy one more for the promotion of termination for 3 months.
When do you open access to the course materials?
After enrolling in the course and successful payment, the student is given access to his personal account (a generated password will be sent by mail). In the personal account, only the recommended materials for preparing for the start of the course will be immediately available. On the declared day of the start, the first lecture in the form of an article and homework will be opened. As soon as the first students complete the assignment, receive feedback and work out their decision on the prepared video review of common mistakes, the next lesson or assignment will be opened. And so on until the end of the program over the next 3 months of study.

After graduation (after solving and passing all tasks) - access to the materials of the versions of this course for other programming languages available on this site through your account is opened. In your account, the access is given to a certain full language version of the course (Python, Java, JavaScript, TypeScript, ...) after at least one group of students has passed the standard 3-month period of study in this programming language.
Does the access to the course materials remain after graduation?
Yes. As long as the site lives, there remains access to all materials: theory, tasks, and video reviews of common mistakes. Also, after completing the course, access to materials in pdf format is given.
Is there a limit on the number of students in a group?
The number of students in the group is not limited.
I'm in a rush, can I start the course earlier?
Contact us describing your situation. Let's look for options together;)
I'm quite a beginner, not yet an IT specialist earning enough ... Is there a way to get on a course at a discount or for free?
Contact us describing your situation. Let's look for options together;)
Course Curators –
Iakiv Kramarenko
Author of the course
QA-Consultant with 12+ years of experience in the field.

"Founding father" of open-source libraries
Selene, nSelene, SelenideJs

Writes books
‣ Intro to Software Development (en, рус, укр)
Искусство Автоматизации с Selene
Искусство Автоматизации с Selenide

Gives public talks on conferences and meetups.
Shares news on twitter :)
Aleksander Popov
Course curator
6 years in the field. The author of the toundra and selenoid-manager. The developer of the SelenideJs (exactly by his main efforts the Selenide from Java was ported to JS). Automation engineer-of-all-trades. Writes tests, libraries, configures CI/CD pipelines.

On this course, supports in chat, especially on questions regarding best practices in programming and infrastructure questions.
Olena Kushnir
Course curator
3+ years of experience in the field. Developer of SelenideJs. Builds processes of Testing and QA Automation at KnowledgeExpert for enterprise clients. Coach devs to write tests;)

Verifies task solutions on this course, supports in chat.
Vlad Burlachenko
Course curator
Software Tester. Builds QA process on a crypto-currency exchange. On autumn 2019 passed same program for Selenide + Kotlin.

"Older brother" on this course. Verifies task solutions and supports in chat.
Contact us –
+380 63 845 95 26
Your question
By clicking on the button, you consent to the processing of personal data and agree to the privacy policy
Click to order
The price is given in Ukrainian hryvnias (aligned with the official price of 65 USD), but when paying for the course, it will be automatically converted to your currency. A bank commission may additionally be charged.
Phone Number
Link to social profile / website