- Wprowadzenie
- Po co to jest
- Uruchamianie - nietechniczni
- Uruchamianie - techniczni
- Kontakt
- English - introduction and explanation
- How to run - non-technical
- How to run - technical
- About me / contact
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.
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.
- Pobrać i zainstalować: JAVA (wersja 11 lub nowsza)
- Pobrać i zainstalować: aplikację WirePusher do powiadomień (Android only)
- Pobrać i uruchomić ten program w postaci pliku JAR
- Pobrać repozytorium i zbudować projekt (wymaga Java 11 )
- Ustawić wartości dla konfiguracji
- Uruchomić jeden z dwóch trybów:
Oba tryby powinny działać identycznie i działają używając testu z drugiego podpunktu.
Jeśli masz uwagi, pomysły, bugi, bądź po prostu chciałbyś wyrazić swoją opinie to zapraszam do kontaktu pod [email protected]
I made this project for my girlfriend which is currently trying to get a driving license. But 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. But before you make your decision some explanation:
- 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.
- 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.
- 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
- 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.
- Download and install: JAVA (version 11 or higher)
- Download and install: WirePusher app for pushes (Android only)
- Download and run this program from JAR file
- Download and build project (Java 11 )
- Set values in configuration
- Run one of the two runners
Both runners should work identically. Both of them use in the end test from second point
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