Skip to content

Search for available terms for driving license and receive notifications on your phone about free terms.

Notifications You must be signed in to change notification settings

Durilian/wordTermChecker

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

35 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

FOR ENGLISH SCROLL BELOW

WYSZUKIWARKA TERMINÓW NA PRAWO JAZDY

Spis treści / Table of Contents

  1. Wprowadzenie
  2. Po co to jest
  3. Uruchamianie - nietechniczni
  4. Uruchamianie - techniczni
  5. Kontakt
  6. English - introduction and explanation
  7. How to run - non-technical
  8. How to run - technical
  9. About me / contact

Wprowadzenie

Cześć wszystkim,
Jestem Marek i jestem testerem, poza pracą mam Dziewczynę Patrycję i to w sumie dzięki niej teraz czytacie ten wstęp.
Tak się składa, że Patrycja jest w trakcie zdawania na prawo jazdy, a że z terminami bywa różnie postanowiłem wspomóc ją z moimi zawodowymi umiejętnościami.

Po co to jest

Do otrzymywania powiadomień o wolnych terminach na prawo jazdy zaraz po tym jak się zwolnią.
Powyższy projekt uruchamia przeglądarkę i co zadany czas sprawdza w wybranych przez nas miastach czy dostępny jest termin egzaminu spełniający nasze kryteria. W przypadku znalezienia wolnego terminu wysłane na podane przez nas dane (ID) powiadomienie push przez aplikację WirePusher
Na ten moment nie zdecydowałem się na dodawanie automatycznego zapisywania na egzamin, gdyż wymagałoby to użycia danych wrażliwych jak np. pesel czy numer profilu kandydata.

UWAGA: Program do działania wymaga danych do konta info-car (mail/hasło) i nigdzie więcej te dane nie są używane/zapisywane. Jeśli boisz się o swoje dane to zalecam założyć dedykowane konto info-car z innym hasłem tylko na potrzeby tej aplikacji.

Uruchamianie - osoby nietechniczne

Opcja niewspierana w aktualnej wersji, jeśli jednak chce ktoś spróbować swoich sił trzeba podjąć następujące kroki:

  1. Pobrać i rozpakować: JAVA OpenJDK (wersja 11 lub nowsza)
  2. Pobrać i zainstalować: aplikację WirePusher do powiadomień (Android only)
  3. Pobrać plik JAR z sekcji "RELEASES"
  4. Uruchomić wiesz polecenia i podać następująca komendę "ŚCIEŻKA/DO/OPENJDK/bin/javaw.exe" -jar "ŚCIEŻKA/DO/PLIKU/JAR"

Uruchamianie - osoby techniczne

  1. Pobrać repozytorium i zbudować projekt (wymaga Java 11+)
  2. Zainstalować plugin Lombok i umożliwić procesowanie adnotacji
  3. Ustawić wartości dla konfiguracji
  4. Uruchomić jeden z dwóch trybów:
  • Uruchomić UI
  • Uruchomić test (testNG)

Oba tryby powinny działać identycznie i działają używając testu z drugiego podpunktu.

Kontakt

Jeśli masz uwagi, pomysły, bugi, bądź po prostu chciałbyś wyrazić swoją opinie to zapraszam do kontaktu pod mafikrpg@gmail.com

Hello everyone!

I made this project for my girlfriend which is currently trying to get a driving license. The terms for the exam are very long. So I made this checker for her and then decided to make it public.

Writing this project gave me a lot of fun, and I have still a lot of ideas on how to improve it and expand its functionalities. So probably I will be still committing here.

I have decided to write it as well as my programmatic skills allow me to. So if you are here because you are thinking of hiring me this code is something you can expect from me. Before you make your decision some explanation:

  1. As there is only one rest post API request I just put everything straight in one method. Because making some larger architecture for it would be an overkill for me.
  2. UI class - I just made it to allow non-technical users to use my project. It was my first adventure with UI and I am aware that it is terribly written and probably has tons of anti-patterns in it.
  3. Selenide is so great that I do not have to overcome many selenium problems because most of them have a built-in solution in Selenide. For example, I do not have to use the stream() by myself because they have a smart implementation in the filter() method
  4. I decided to make this project as simple as possible to use for Polish non-technical users (main "target" for this app) so logs and UI are available only in Polish. I am open to suggestions and criticism as I want to use this project to develop my programming skills.

How to run - non-technical

Currently not supported. If you would like to try anyway, there are sample steps to do:

  1. Download and unzip: JAVA OpenJDK (version 11 or higher)
  2. Download and install: WirePusher app for pushes (Android only)
  3. Download program as JAR file from "RELEASE" section
  4. Run commandline and use below command "PATH/TO/OPENJDK/bin/javaw.exe" -jar "PATH/TO/FILE/JAR"

How to run - technical

  1. Download and build project (Java 11+)
  2. Download and install Lombok plugin then enable annotation processing
  3. Set values in configuration
  4. Run one of the two runners

Both runners should work identically. Both of them use in the end test from second point

About me / contact

I am tester with a few years of experience. I am currently focusing on this project and developing my programmatic skills. If you would like to know more about me or you are looking for contact visit my Linkedin profile

About

Search for available terms for driving license and receive notifications on your phone about free terms.

Topics

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages