6 punktów 🐤
Hej 👋 Mam na imię Justyna. Jestem osobą ambitną, łatwo nawiązującą kontakty i wychodzącą naprzeciw potrzebom innych. Lubię sprawdzać siebie i różne rozwiązania, a nauka nowych rzeczy sprawia mi przyjemność.
Aktualnie z braku satysfakcji zawodowej postanowiłam zmienić ścieżkę mojej kariery. Jakiś czas temu zaciekawił mnie temat testowania oprogramowania i zaczęłam pogłębiać swoją wiedzę w tej dziedzinie. Na facebooku wyświetliła mi się reklama Waszego projektu i postanowiłam z Waszą pomocą stworzyć portfolio, które pomoże mi w rozpoczęciu praktyki testerskiej i sprawdzeniu czy jest to praca dla mnie.
Justyna 😃
Zrobiony przy uzyciu konta user01@getnada.com
🔳 Na czym polega ta aplikacja? Do czego służy?
Aplikacja jest przeznaczona dla "łowców talentów" skautów piłki nożnej. Służy do przeglądanie wskaźników, umiejętności i pozycji zawodników z różnych klubów. Użytkownik ma możliwość sprawdzenia imienia, nazwiska, wieku, zajmowanej pozycji, przynależności do klubu, sprawdzenia ilości raportów oraz meczy i punktowej recenzji.
🔳 Jakie funkcjonalności znajdują się w aplikacji? Do czego służą. Czy są intuicyjne, czy może byś coś zmienił_a? (Nie bój się wyrażać opinię!)
Aplikacja umożliwia dodawania zawodników. Wyświetlania listy zawodników, oraz edycji dodanych już piłkarzy. Mamy też możliwość filtrowania.
Nie dokońca są te funkcjonalności intuicyjne. Nie ma możliwości wyboru ilu zawodników chcemy mieć na jednej stronie. Nie ma możliwości filtrowania przez dominującą nogę, osiągnięcia oraz alternatywną pozycję zawodnika.
Brak wyrażnego podziału na kolumny.
🔳 Oceń interfejs aplikacji (wygląd) – czy Ci się podoba, czy nie?
Interfej aplikacji mi się nie podoba. Wygląda jak schemat, a nie gotowa aplikacja. Wygląd aplikacji nie jest czytelny, a zakładki są dziwnie rozmieszczone. Moim zdaniem powinny one być w poziomie, a nie w pionie. Layout jest też za szeroki, więkość aktualnych aplikacji układana jest w środkowej części.
🔳 Czy aplikacja jest intuicyjna? (Intuicyjna, czyli np. nie masz problemu ze zrozumieniem, co należy kliknąć, żeby wejść do formularza dodawania nowego zawodnika piłki nożnej do systemu).
Nie miałam problemu ze znalezieniem formularza dodawania nowego zawodnika piłki nożnej do systemu, ale moim zdaniem znajduje się on w dziwnym miejscu. Powinien znajdować się przy zakładach, a nie tylko na stronie głównej. Ponadto powinno się to właśnie nazywać formularz, a nie linki pomocnicze.
W filtrach brakuje pół wyborów w skończonych kategoriach np. pozycje zawoników są już określone, a w tej aplikacji jest możliwość wpisywania "czegokolwiek".
🔳 Czy zauważasz jakieś błędy? Albo coś wydaje Ci się błędem? Zapisz swoje przemyślenia w pliku. Tutaj masz na to miejsce, czas i przestrzeń! 😉
- Brak identyfikacji ID dla poszczególnych zawodników w zakładce Gracze
- Możliwość wpisania imienia i nazwiska składającego się ze znaków, cyfr, zbyt krótkich lub "hasłowych"
- Brak wartości brzegowych wieku zawodników, czyli możliwość wpisania wieku na minusie, a także zbyt dużych (w rzeczywistosci najstarszy piłkarz ma 55 lat, a najmłodszy 16 lat)
- Brak wartości brzegowych dla wagi i wzrostu - jest możliwość wpisania wartości na minusie, liter lub nieprawdopodobnych wartości
- Możliwość dodania nieistniejących pozycji zawodników
- Możliwość dodania nieistniejących klubów
- Brak ograniczenia w ilości znaków w poszczególnych kolumnach
- W filtrach w wersji polskiej mamy język angielski pomieszany z językiem polskim, problem ten też jest przy dodawaniu gracza (znowu w języku angielskim Required w polskiej wersji aplikacji)
- Przy przechodzeniu przez poszczególne strony w zakładce Gracze zmienia się pozycja kolumn
- Przy przechodzeniu przez poszczególne strony w zakładce Gracze okno ma możliwość rozciąga się (brak zwijania długich nazw)
- Możliwość dodawania tych samych zawodników
- Przy eksporcie do .csv wyskakują błedy w dwóch ostatnich kolumnach
- Przy eksporcie do .csv w kolumnie wiek wpisane są daty, a w aplikacji tylko wiek
- Nie można zaznaczyć więcej zawodników niż znajduje się na jednej stronie
- Przy wyborze drukowania nie zawsze zawsze pojawiają się linie oddzielające użytkowników
- Możliwość wpisania w pole profil Facebook, Łączy nas piłka i 90 minut linku nie z tych aplikacji lub w ogóle brak linku (wpisane są dowolne znaki)
- Przy dodawaniu nowego gracza pomimo, iż z * (czyli wymagane jest zaznaczone imię, nazwisko, data urodzenia oraz główna pozycja) to przy próbie zapisu na czerwono podświetlone tylko imię - mamy kod 400 (POST)
- Błędne wyświetlanie komunikatów - wyskakuje nam w http, że musimy dodać email, ale to pole nie jest podświetlane na czerwono, ani nie ma *
- Bug - kod błędu 404 (strona łączy się z serwerem, ale nie może znaleść właściwego pliku odpowiadającego za działanie danej podstrony) https://scouts-test.futbolkolektyw.pl/pl/favicon.ico
- Bug - Params
start
andlimit
are deprecated. Use_start
and_limit
, który nie wiem co oznacza dotyczy rozszerzenia js i znajduje się w zakładce players - Brak możliwości dodawania graczy z innych krajów
- Brak zabezpieczeń przed zmianami - zmian może dokonać każdy użytkownik, nie tylko administrator lub dany zawodnik
- Brak przycisku na banerze przenoszącego na główną stronę - jest to bardzo niewygodne zwłaszcza przy obsłudze na aplikacjach mobilnych
- Na aplikacjach mobilnych, żeby zmienić zakładkę musimy wciskać hamburger menu, co jest czasochłonne
- Niewygodne przeglądanie zakładki Gracze na apliacji mobilnej
👉Google exel file with Subtask 1
👉Google exel file with Subtask 2
🔳 Po co piszemy test case’y?
Warto pisać przypadki testowe, ponieważ jest to dobry sposób na spisanie wiedzy na temat testowanej aplikacji/systemu. Przypadki testowe pomagają w trakcie testowania poprawności oprogramowania, ponieważ porządkują pracę. Dzięki czemu wiadomo, ile funkcjonalności jeszcze zostało nam do przetestowania. Dobry przypadek testowy powinien odpowiadać na pytanie: „Co tak naprawdę chcę przetestować?” Ponadto po zakończeniu testów, na podstawie przypadków testowych tester może tworzyć raporty z wykonanych testów na danej aplikacji/systemie.
👉Google exel file with Subtask 4
👉Google exel file with Subtask 2 - Bug reports
👉Google exel file with Subtask 3 -Bug Tracker
👉Google exel file with Subtask 2 - Bug reports for olx mobile app
🔳 Do czego służy ta aplikacja? Jaki jest cel tej aplikacji?
Aplikacja olx służy do sprzedawania wystawianych lub kupowania wystawionych przedmiotów i usług. Ogłoszenia zawierają się w różnych kategoriach takich jak: Moda, Zwierzęta, Dla Dzieci, Sport i Hobby, Muzyka i Edukacja, Usługi i Firmy.
🔳 Kto ma być użytkownikiem końcowym aplikacji?
Użytkownikiem końcowym są osoby wyszukujące i nabywają dany produkt/usługę.
🔳 Czy według Ciebie aplikacja jest user friendly? (Przyjazna dla użytkownika- np. wchodzisz do aplikacji i szybko łapiesz do czego służą przyciski. Poczytaj na ten temat w internecie- co to znaczy, że aplikacja jest przyjazna dla użytkownika)
Tak, dla mnie apliacja Olx jest user friendly 👌 Olx ma dobrze zbudowaną nawigację, posiada przyciski wykonywania akcji (CTA) oraz inteligentną wyszukiwarkę.
🔳 Jak byś usprawnił aplikację? Co byś w niej poprawił. Czy masz jakiś pomysł na dodatkową funkcjonalność? (Żeby nie było: nie jest to aplikacja przy której pracuję, takie pytania pojawiają się na rozmowach rekrutacyjnych dlatego dobrze jest to przećwiczyć :D )
Mam pomysł na nową fukcjonalność. 🙋♀️ Po wybraniu Kategorii - przycisk sprawdź Lolanie. Po czym wyświetlanie się mapy gdzie można odebrać towar lub gdzie można nabyć usługę, ułatwiłoby to poszukiwanie usług w pobliżu. 🏡
🔳 Jakie dostrzegasz różnice pomiędzy testowaniem aplikacji internetowej, a natywnej?
Testowanie funkcjonalności i wydajności aplikacji natywnych jest bardziej skomplikowane, ponieważ muszą one być testowane na różnych platformach i urządzeniach, podczas gdy aplikacje internetowe są testowane tylko na różnych przeglądarkach i konfiguracjach. Ponad to testowanie interfejsu użytkownika aplikacji natywnych jest bardziej złożone, ponieważ interfejs użytkownika jest dostosowywany do platform (zwykle Google Play oraz App Store) , podczas gdy aplikacje internetowe mają taki sam interfejs na wszystkich urządzeniach. W przypadku aplikacji natywnej doodatkowo wymagana jest instalacja.
🔳 1. Wyświetl tabelę actors w kolejności alfabetycznej sortując po kolumnie surname.
SELECT * FROM actors ORDER BY surname
🔳 2. Wyświetl film, który powstał w 2019 roku.
SELECT * FROM movies WHERE year_of_production=2019
🔳 3. Wyświetl wszystkie filmy, które powstały między 1900, a 1999 rokiem.
SELECT * FROM movies WHERE year_of_production BETWEEN 1900 AND 1999
🔳 4. Wyświetl JEDYNIE tytuł i cenę filmów, które kosztują poniżej 7$
SELECT title, price FROM movies WHERE price <7
🔳 5. Użyj operatora logicznego AND, aby wyświetlić aktorów o actor_id pomiędzy 4-7 (4 i 7 powinny się wyświetlać). NIE UŻYWAJ operatora BETWEEN.
SELECT * FROM actors WHERE actor_ID >=4 AND actor_ID <=7
🔳 6. Wyświetl klientów o id 2,4,6 wykorzystaj do tego warunek logiczny.
SELECT * FROM customers
WHERE customer_id=2 OR customer_id=4 OR customer_id=8
SELECT * FROM customers
WHERE customer_id%2=0
🔳 7. Wyświetl klientów o id 1,3,5 wykorzystaj do tego operator IN.
SELECT * FROM customers
WHERE customer_id IN (1,3,5)
🔳 8. Wyświetl dane wszystkich osób z tabeli ‘actors’, których imię zaczyna się od ciągu “An”.
SELECT * FROM actors
WHERE name LIKE 'AN%'
🔳 9. Wyświetl dane klienta, który nie ma podanego adresu email.
SELECT * FROM customers
WHERE email IS NULL
🔳 10. Wyświetl wszystkie filmy, których cena wynosi powyżej 9$ oraz ich ID mieści się pomiędzy 2 i 8 movie_id.
SELECT * FROM movies WHERE price>9 and movie_id BETWEEN 2 AND 8
🔳 11.Popełniłam błąd wpisując nazwisko Ani Miler – wpisałam Muler. Znajdź i zastosuj funkcję, która poprawi mój karkołomny błąd 🙈
UPDATEcustomers
SET surname = 'Miler' WHERE name ='Ania'
🔳 12. Pobrałam za dużo pieniędzy od klienta, który kupił w ostatnim czasie film o id 4. Korzystając z funkcji join sprawdź, jak ma na imię klient i jakiego ma maila. W celu napisania mu wiadomości o pomyłce fantastycznej szefowej.
SELECT name, email, movie_id FROM sale AS s INNER JOIN customers AS c ON s.customer_id = c.customer_id WHERE movie_id = 4
🔳 13. Na pewno zauważył_ś, że sprzedawca zapomniał wpisać emaila klientce Patrycji. Uzupełnij ten brak wpisując: pati@mail.com
UPDATE customers SET email = 'pati@mail.com' WHERE name = 'Patrycja'
🔳 14. Dla każdego zakupu wyświetl, imię i nazwisko klienta, który dokonał wypożyczenia oraz tytuł wypożyczonego filmu. (wykorzystaj do tego funkcję inner join, zastanów się wcześniej, które tabele Ci się przydadzą do wykonania ćwiczenia).
SELECT name, surname, title FROM sale AS s INNER JOIN customers AS c ON s.customer_id = c.customer_id INNER JOIN movies AS m ON s.movie_id = m.movie_id ORDER BY sale_date
🔳 15. W celu anonimizacji danych, chcesz stworzyć pseudonimy swoich klientów. - Dodaj kolumnę o nazwie ‘pseudonym’ do tabeli customer,- Wypełnij kolumnę w taki sposób, aby pseudonim stworzył się z dwóch pierwszych liter imienia i ostatniej litery nazwiska. Np. Natalie Pilling → Nag
ALTER TABLE customers ADD pseudonim VARCHAR(3); UPDATE customers SET pseudonim = CONCAT(LEFT(name, 2), RIGHT(surname, 1))
🔳 16. Wyświetl tytuły filmów, które zostały zakupione, wyświetl tabelę w taki sposób, aby tytuły się nie powtarzały.
SELECT DISTINCT title FROM sale JOIN movies ON sale.movie_id = movies.movie_id
🔳 17. Wyświetl wspólną listę imion wszystkich aktorów i klientów, a wynik uporządkuj alfabetycznie. (Wykorzystaj do tego funkcji UNION)
SELECT name FROM actors UNION SELECT name FROM customers ORDER BY name ASC
🔳 18. Polskę opanowała inflacja i nasz sklepik z filmami również dotknął ten problem. Podnieś cenę wszystkich filmów wyprodukowanych po 2000 roku o 2,5 $ (Pamiętaj, że dolar to domyślna jednostka- nie używaj jej nigdzie).
UPDATE movies SET price = price + 2.5 WHERE year_of_production>2000
🔳 19. Wyświetl imię i nazwisko aktora o id 4 i tytuł filmu, w którym zagrał
SELECT name, surname, title FROM actors JOIN cast ON actors.actor_id = cast.actor_id JOIN movies ON cast.movie_id = movies.movie_id WHERE actors.actor_id = 4
🔳 20. A gdzie nasza HONIA!? Dodaj do tabeli customers nową krotkę, gdzie customer_id = 7, name = Honia, surname = Stuczka-Kucharska, email = honia@mail.com oraz pseudonym = Hoa
INSERT INTO customers (customer_id, name, surname, email, pseudonim) VALUES (7, 'Honorata', 'Stuczka-Kucharska', 'honia@mail.com', 'Hoa')
Almost ... 👷