Poznańska grupa .Net spotkanie VI - Test Driven Development

Loading...

Flash Player 9 (or above) is needed to view presentations.
We have detected that you do not have it on your computer. To install it, go here.

0 comments

Post a comment

    Post a comment
    Embed Video
    Edit your comment Cancel

    Favorites, Groups & Events

    Poznańska grupa .Net spotkanie VI - Test Driven Development - Presentation Transcript

      • Bartłomiej Szafko
    1. Be Driven!
      • Wymagana dyscyplina
      • Szersze spojrzenie na programowanie
      • Umiejętność zastosowania się do zaleceń
    2. Test Driven!
      • Testy
      • Kodowanie
      • Uruchamianie testów
      • Naprawianie kodu
      • Uruchamianie testów(znowu)
      • Refaktoryzacja
      Za Asutosh Nilkanth http://www.nilkanth.com
    3. TDD jest AGILE
      • AGILE: grupa metodyk projektowych
      • eXtremeProgramming: iteracje + TESTOWANIE
      • Szybko dostarczamy działające oprogramowanie
      • Klient może sobie podziałać na prawie gotowej aplikacji
      • Silne nastawienie na zmianę
    4. http://www.extremeprogramming.org
    5. Testowanie
      • Przecież sprawdzam mój kod!
      • Rodzaje testów
        • Unit
        • Integration(moduły)
        • Functional(według specyfikacji, user story)
        • System( wymagania)
          • System integration ( współpraca z innymi aplikacjami)
        • Acceptance – akceptacji:
          • Alfa + Beta
      • Testy dokumentują kod
    6. Testowanie – cd.
      • To, że przechodzą testy, nie oznacza, że nie ma błędów
      • Im więcej błędów znajdziesz – tym więcej ich jest (nieodkrytych?)
      • Nie wszystkie błędy naprawiamy ???
    7. Unit Testing
      • Testowanie małych kawałków kodu - unitów
      • Unit:
        • Procedura, funkcja ( w językach proceduralnych)
        • Metoda
    8. Zasady budowania testów
      • Zostajemy w obrębie procesu i hosta
      • Nie testujemy zapisywanie/pobierania z bazy danych
        • Problem: taki sam stan bazy przed testami
        • Problem: zewnętrzna zależność serwer SQL
      • Nie testujemy wywołań web service, ani niczego sieciowego
      • Pojedyncze sprawdzenie wyniku(Assert), jeśli więcej rozbijamy test
      • Czasem osobny test dla każdej metody
      • Testy na wyjątki na końcu
    9. NUNIT(www.nunit.org)
      • Atrybuty:
        • TestFixture – klasa
        • Test – metoda – właściwy test + Asserty
          • ExpectedException
        • SetUp – metoda – stan na start
        • TearDown – metoda – przywrócenie stanu orginalego
      • Assert – sprawdzanie wartości
      • DEMO
    10. Mock, fake
      • Oszukane implementacje interfejsów
      • Pozwala dodać listę metoda – wynik; property – wynik;
      • Pozwalają ominąć kawałki sięgające na zewnątrz (np. baza danych, web service)
      • Nmock ( http://www.nmock.org )
      • Pozwala na wielokrotne wywołania metod
      • DEMO
    11. Code coverage – pokrycie kodu
      • Chcemy, żeby nasze testy pokrywały 100% kodu
      • Wszystkie rozgałęzienia:
        • If, case, exceptions, catch
      • Pozwala stwierdzić ile i _JAKI_ kod nie jest testowany
      • NCover ( http://www.ncover.org/ ), niestety płatny
    12. Testowanie UI - Winforms
        • NUnitForms (http://nunitforms.sourceforge.net/)
        • TestRecoder
        • Problem: okna modalne, własne kontrolki
        • DEMO
    13. Testowanie UI – ASP .NET
        • WatiN (http://watin.sourceforge.net/)
        • WatiN TestRecoder
        • WatiN nadaje się do stress testów
        • WADY:
          • Wolno działa
          • Zmiany w .aspx mogą uniemożliwić testowanie
        • VSTS ma dobre narzędzia do testowania Web:
          • Symulowanie różnych rozkładów obciążeń
        • DEMO
    14. Ciekawe narzędzia
      • Wtyczka do VS TestDriven.NET ( http://www.testdriven.net )
      • Pytania?
      • Kompilacja linków + slajdy: http://bartekszafko.inc.pl
      • Dziękuję za uwagę

    + bartlomiej.szafkobartlomiej.szafko, 2 years ago

    custom

    1802 views, 0 favs, 4 embeds more stats

    More info about this document

    © All Rights Reserved

    Go to text version

    • Total Views 1802
      • 1761 on SlideShare
      • 41 from embeds
    • Comments 0
    • Favorites 0
    • Downloads 10
    Most viewed embeds
    • 16 views on http://bartekszafko.pl
    • 15 views on http://bartekszafko.inc.pl
    • 5 views on http://dotnet.poznan.pl
    • 5 views on http://www.dotnet.poznan.pl

    more

    All embeds
    • 16 views on http://bartekszafko.pl
    • 15 views on http://bartekszafko.inc.pl
    • 5 views on http://dotnet.poznan.pl
    • 5 views on http://www.dotnet.poznan.pl

    less

    Flagged as inappropriate Flag as inappropriate
    Flag as inappropriate

    Select your reason for flagging this presentation as inappropriate. If needed, use the feedback form to let us know more details.

    Cancel
    File a copyright complaint
    Having problems? Go to our helpdesk?

    Categories