Upgrade to Pro — share decks privately, control downloads, hide ads and more …

PFK (PL): Workshop on software testing for cognitive science students

PFK (PL): Workshop on software testing for cognitive science students

(ENG) I'm honoured to give a workshop on software testing for young cognitive science students in academic conference "Poznan Cognitive Scientists Forum".

https://www.facebook.com/events/1850225681749735/

(PL) Miałam przyjemność prowadzić warsztat z testowania oprogramowania dla studentów kognitywistyki w ramach konferencji akademickiej Poznańskie Forum Kognitywistyczne.
Treści kształcenia:
→ Miniwarsztat z testowania oprogramowania
Warsztat w zwięzły i praktyczny sposób przybliży uczestnikom dziedzinę dbania o jakość oprogramowania. Podczas warsztatów będzie można dowiedzieć się:
- czym jest testowanie i jak się ma do programowania?
- czym jest jakość oprogramowania i po co o nią dbać?
- jak dbać o jakość oprócz testowania?
- tajemnice przeglądarki internetowej a testy aplikacji webowych
- zgłaszanie błędów, jego elementy i sens
- jak podejście kognitywne wspomaga wydajność pracy w IT

Aleksandra Kornecka

May 19, 2019
Tweet

More Decks by Aleksandra Kornecka

Other Decks in Technology

Transcript

  1. Miniwarsztat z
    testowania
    oprogramowania
    PFK, 19.05.2019
    Aleksandra Kornecka

    View full-size slide

  2. whoami
    Software Quality Assurance
    Engineer
    &
    Tester
    &
    ...

    View full-size slide

  3. Czym jest oprogramowanie?

    View full-size slide

  4. Aplikacja webowa

    View full-size slide

  5. Web = klient gada z serwerem przez http

    View full-size slide

  6. Działanie aplikacji webowej

    View full-size slide

  7. Jak wytwarza się oprogramowanie?

    View full-size slide

  8. Role w IT (zbiór niepełny!)
    data scientist
    Programista (backend, frontend, full-stack)
    DevOps, SRE, admin
    koordynator projektu/ PM
    QA
    grafik/designer
    architekt systemu
    marketingowiec
    specjalista social media
    UX researcher,
    UX designer
    analityk biznesowy
    tester
    CS / OU, sales

    View full-size slide

  9. Po co testuje się oprogramowanie?
    Czym jest jakość oprogramowania?
    Dlaczego warto o nią dbać?

    View full-size slide

  10. Testowanie aplikacji webowych.
    Przeglądarka internetowa i jej moc.

    View full-size slide

  11. Przeglądarka internetowa (web browser)
    ● Jakiej przeglądarki używasz?
    ● Jakiej wersji przeglądarki używasz na
    desktopie?
    ● Jakiej wersji przeglądarki używasz na
    telefonie?
    ● Jakiej wersji przeglądarki używasz na ...
    telewizorze? :)
    ● ...

    View full-size slide

  12. Zobacz co masz w przeglądarce :)
    (na przykładzie Google Chrome)
    ● Inspect / Zbadaj element /
    ● zakładka Elements
    ● zakładka Network / Sieć
    ● zakładka Application
    ● zakładka Audits
    ● ...

    View full-size slide

  13. Testy eksploracyjne web
    Odkryj możliwości przeglądarki i poeksploruj wybraną
    aplikację webową lub stronę internetową,
    np. https://amu.edu.pl/

    View full-size slide

  14. Statusy HTTP i kody błędów
    1xx information
    2xx success
    3xx redirection
    4xx client errors
    5xx server errors
    Do podejrzenia np. w przeglądarce, w “devtoolsach” pod “Network” / “Sieć”

    View full-size slide

  15. Zgłoszenie błędu (bug report)
    1. Zrozumiały tytuł i opis błędu zawierający kontekst wystąpienia błędu,
    okoliczności, ew.tłumaczący dlaczego to jest błąd.
    2. Środowisko wystąpienia (platforma, OS, przeglądarka)
    3. Kroki do łatwego zreprodukowania błędu.
    4. Artefakty testów (zrzut ekranu, film, dane testowe itp.), pomocne w
    namierzeniu i naprawie błędu.

    View full-size slide

  16. Przypadek testowy (test case)
    1. Ścieżka główna użytkownika (np. pomyślne lub niepomyślne
    zarejestrowanie się w serwisie społecznościowym).
    2. Ścieżki poboczne do ścieżek głównych (np. jakie różne rodzaje znaków i ich
    zestawień można wpisać w pola aby uzyskać odpowiednio pomyślną lub
    niepomyślną rejestrację).
    3. Przypadki brzegowe (corner cases, edge cases) - ścieżki, sytuacje, które
    raczej się nie zdarzą, ale nadal są możliwe - należy je uwzględnić w testach,
    gdyż często mogą mieć poważne konsekwencje dla działania aplikacji.

    View full-size slide

  17. Webowe narzędzia do testowania aplikacji web
    (przykłady)
    ● https://jigsaw.w3.org/css-validator/ (poprawność styli)
    ● https://validator.w3.org/checklink (zepsute linkowania)
    ● https://developers.google.com/speed/pagespeed/insights/ (performance - web
    & mobile)
    ● https://tools.pingdom.com/ (performance)

    View full-size slide

  18. Wartość kognitywisty w pracy w IT

    View full-size slide

  19. Podejście poznawcze do wytwarzania oprogramowania
    = świadomość i znajomość ograniczeń i możliwości percepcji
    człowieka
    ● Użytkownicy końcowi = ludzie
    ● Programiści, testerzy, QA, analitycy, kierownicy projektów (..) = ludzie
    ● Komputery nie są ludźmi ... trzeba się z nimi porozumieć inaczej!

    View full-size slide

  20. Świadomość biases

    View full-size slide

  21. Znajomość heurystyk umysłu
    28

    View full-size slide

  22. Dziękuję za uwagę!
    AleksandraKornecka.com
    GirlsWhoTest.pl
    OLXgroup.com Źródła, obrazki:
    https://goo.gl/Rn2Hri

    View full-size slide