[PL] Testowanie mutacyjne

[PL] Testowanie mutacyjne

Testowanie mutacyjne
Instytut Informatyki Uniwersystetu Wrocławskiego
Seminarium: Testowanie Oprogramowania
09.03.2016

0c9087813222ecf3d5ff0014488d50e1?s=128

Rafał Łasocha

March 09, 2016
Tweet

Transcript

  1. Testowanie mutacyjne Rafał Łasocha

  2. Pokrycie testów • po co? • jak? ◦ współczynnik LOC

    testów do kodu ◦ simplecov ◦ mutant
  3. None
  4. None
  5. None
  6. SimpleCov • mierzy w sensowny sposób pokrycie testami naszego kodu

    • można wyciągnąć ciekawe wnioski • linie tekstu to nie jest do końca sposób w jaki jest reprezentowany nasz kod • inne narzędzia tego typu mogą pójść dalej
  7. Mutant

  8. None
  9. Czy ta instrukcja warunkowa jest otestowana?

  10. Mutant zna bibliotekę standardową

  11. Co się stanie, jak usuniemy branczyka?

  12. Po co ten blok? Nie zapomniałeś aby teściku?

  13. Co to za magiczne stałe? Zmieniłem i dalej działa?

  14. None
  15. None
  16. Wydajność • Przykład: arkency/ruby_event_store • rspec ◦ 0.01647 sekundy •

    mutant ◦ 35.98 sekund
  17. Wnioski • gdzie warto korzystać ◦ biblioteki? ◦ małe aplikacje?

    ◦ legacy? ◦ mikroserwisy? • feedback loop ◦ wchodzę do projektu ◦ odpalam mutanta ◦ biorę jednego, zabijam ◦ 5-10 minut, dowiozłem wartość do projektu • wykrywanie niepotrzebnych testów? • jak bardzo to jest dobre?