ݺߣ

ݺߣShare a Scribd company logo
Pouzitı JUnit a Mock frameworku
                   ˇ ´                        ˚
              pro testovanı Java EE architektury
                        ´ ´
                             pr
                              ˇedobhajoba bakalaˇske prace
                                               ´r ´ ´


      autor: Vıt Kotac
              ´      ˇka, ved.: RNDr. Jaroslav Prochazka, Ph.D.
                                                    ´

                                                 Ostravska univerzita
                                                         ´


                                                     7. 6. 2008




autor: Vıt Kotacka, ved.: RNDr. Jaroslav Prochazka, Ph.D. (OsU)
        ´      ˇ                           Pouz´ ´ JUnit a Mock frameworku pro testovanı Java EE architektury2008
                                              ˇitı                       ˚           ´ ´                7. 6.       1 / 32
Obsah

    1     Testovanı softwaru, typy testu
                ´ ´                    ˚

    1     Zpusoby testovanı Java EE architektury
            ˚           ´ ´

    1     JUnit testovanı
                      ´ ´

    1     Mock testovanı
                     ´ ´

    1     Porovnanı JUnit a Mock testovanı
                ´ ´                    ´ ´

    1     Testovanı Java EE architektury
                ´ ´

    1     Nastroje
           ´


autor: Vıt Kotacka, ved.: RNDr. Jaroslav Prochazka, Ph.D. (OsU)
        ´      ˇ                           Pouz´ ´ JUnit a Mock frameworku pro testovanı Java EE architektury2008
                                              ˇitı                       ˚           ´ ´                7. 6.       2 / 32
Testovanı softwaru, typy testu
        ´ ´                    ˚
    Testovanı softwaru
          ´ ´
        proces pro zajistenı kvality softwaru
                       ˇˇ ´
        zpusob, jak v systemu odhalit chyby
          ˚               ´

    Typy testu
             ˚
            jednotkove testy
                       ´
            integrac ´ testy
                   ˇnı
            systemove testy
                ´    ´
                    end-to-end testy
                    vykonnostnı testy
                     ´          ´
                    zateˇove testy
                     ´ ˇz ´
                    bezpec ˇnostnı testy
                                  ´
                    testy pouzitelnosti
                             ˇ
            akceptac ´ testy
                   ˇnı
autor: Vıt Kotacka, ved.: RNDr. Jaroslav Prochazka, Ph.D. (OsU)
        ´      ˇ                           Pouz´ ´ JUnit a Mock frameworku pro testovanı Java EE architektury2008
                                              ˇitı                       ˚           ´ ´                7. 6.       3 / 32
Jednotkove testovanı
           ´       ´ ´




autor: Vıt Kotacka, ved.: RNDr. Jaroslav Prochazka, Ph.D. (OsU)
        ´      ˇ                           Pouz´ ´ JUnit a Mock frameworku pro testovanı Java EE architektury2008
                                              ˇitı                       ˚           ´ ´                7. 6.       4 / 32
Integracnı testovanı
         ˇ ´       ´ ´




autor: Vıt Kotacka, ved.: RNDr. Jaroslav Prochazka, Ph.D. (OsU)
        ´      ˇ                           Pouz´ ´ JUnit a Mock frameworku pro testovanı Java EE architektury2008
                                              ˇitı                       ˚           ´ ´                7. 6.       5 / 32
Systemove testovanı
      ´   ´       ´ ´




autor: Vıt Kotacka, ved.: RNDr. Jaroslav Prochazka, Ph.D. (OsU)
        ´      ˇ                           Pouz´ ´ JUnit a Mock frameworku pro testovanı Java EE architektury2008
                                              ˇitı                       ˚           ´ ´                7. 6.       6 / 32
Problem pr testovanı Java EE architektury
       ´   ˇi      ´ ´
    Problem
          ´
    Zavislost kodu aplikace na objektech kontejneru nebo
     ´          ´
    aplikac ´ho serveru (Web, EJB, JNDI).
            ˇnı

    Zavislost servletu na objektech kontejneru
     ´
    public class MyServlet extends HttpServlet {
       public void doGet(
          HttpServletRequest request,
          HttpServletResponse response)
          throws ServletException, IOException {

               ...
          }
    }

autor: Vıt Kotacka, ved.: RNDr. Jaroslav Prochazka, Ph.D. (OsU)
        ´      ˇ                           Pouz´ ´ JUnit a Mock frameworku pro testovanı Java EE architektury2008
                                              ˇitı                       ˚           ´ ´                7. 6.       7 / 32
Zpusoby testovanı Java EE architektury
    ˚           ´ ´




            testovanı v izolaci (JUnit, Mock Objects)
                  ´ ´
            testovanı uvnitr kontejneru (Cactus)
                  ´ ´      ˇ
            testovanı vne kontejneru (ServletUnit)
                  ´ ´ ˇ




autor: Vıt Kotacka, ved.: RNDr. Jaroslav Prochazka, Ph.D. (OsU)
        ´      ˇ                           Pouz´ ´ JUnit a Mock frameworku pro testovanı Java EE architektury2008
                                              ˇitı                       ˚           ´ ´                7. 6.       8 / 32
JUnit testovanı
              ´ ´

    Princip JUnit
            izolovanı testovane komponenty (tr´dy)
                  ´ ´         ´                ˇı
            oveˇenı pomocı tvrzenı (assertion)
               ˇr ´         ´     ´

    TDD – Test Driven Development
    Princip test first
      1 Pr ´ nı testu
          ˇida ´
      2 Spustenı testu (novy test neprojde)
             ˇˇ ´      ˚    ´
      3 Implementace produktivnıho kodu
                                   ´    ´
      4 Spustenı testu (novy test projde)
             ˇˇ ´      ˚    ´
      5 Refaktorovanı kodu
                      ´ ´ ´


autor: Vıt Kotacka, ved.: RNDr. Jaroslav Prochazka, Ph.D. (OsU)
        ´      ˇ                           Pouz´ ´ JUnit a Mock frameworku pro testovanı Java EE architektury2008
                                              ˇitı                       ˚           ´ ´                7. 6.       9 / 32
JUnit 3.8

    public class MyTest extends TestCase {

         protected void setUp() {
           ...
         }

         protected void tearDown() {
           ...
         }

         public void testDoSomething() {
           ...
         }
    }

autor: Vıt Kotacka, ved.: RNDr. Jaroslav Prochazka, Ph.D. (OsU)
        ´      ˇ                           Pouz´ ´ JUnit a Mock frameworku pro testovanı Java EE architektury
                                              ˇitı                       ˚           ´ ´               7. 6. 2008   10 / 32
JUnit 4.x
    @RunWith(JMock.class)
    public class MyTest {

         @Before
         public void initialize() {
         }

         @After
         public void cleanAllMess() {
         }

         @Test
         public void doSomething() {
           ...
         }
    }
autor: Vıt Kotacka, ved.: RNDr. Jaroslav Prochazka, Ph.D. (OsU)
        ´      ˇ                           Pouz´ ´ JUnit a Mock frameworku pro testovanı Java EE architektury
                                              ˇitı                       ˚           ´ ´               7. 6. 2008   11 / 32
Zavislost objektu
   ´              ˚




autor: Vıt Kotacka, ved.: RNDr. Jaroslav Prochazka, Ph.D. (OsU)
        ´      ˇ                           Pouz´ ´ JUnit a Mock frameworku pro testovanı Java EE architektury
                                              ˇitı                       ˚           ´ ´               7. 6. 2008   12 / 32
Mock testovanı
             ´ ´
    Double objekty
            stub: natvrdo napsany kod, prazdna implementace,
                                   ´ ´      ´    ´
            vracı defaultnı hodnoty (0, false, null)
                ´         ´
            fake: „zkratkovita“, zjednodusena implementace
                             ´            ˇ ´
            mock: implementuje rozhranı nahrazovaneho objektu,
                                          ´          ´
            definuje chovanı objektu
                          ´ ´




autor: Vıt Kotacka, ved.: RNDr. Jaroslav Prochazka, Ph.D. (OsU)
        ´      ˇ                           Pouz´ ´ JUnit a Mock frameworku pro testovanı Java EE architektury
                                              ˇitı                       ˚           ´ ´               7. 6. 2008   13 / 32
Pouzitı Mock objektu (jMock)
     ˇ ´




autor: Vıt Kotacka, ved.: RNDr. Jaroslav Prochazka, Ph.D. (OsU)
        ´      ˇ                           Pouz´ ´ JUnit a Mock frameworku pro testovanı Java EE architektury
                                              ˇitı                       ˚           ´ ´               7. 6. 2008   14 / 32
Porovnanı JUnit a Mock testovanı
        ´ ´                    ´ ´
    Test Driven Development (TDD)
         verifikace stavu (hodnoty)
         pouz´vanı realnych objektu
             ˇı ´ ´ ´ ´            ˚
         vyvoj smerem middle-out
          ´       ˇ
         komplexnı znovupouzitelne pr´pravky
                   ´         ˇ     ´ ˇı
         vytvaˇenı metod vracejıcıch hodnotu
              ´r ´             ´ ´

    Behavior Driven Development (BDD)
            verifikace chovanı´ ´
            pouz´vanı Mock objektu
                ˇı ´ ´             ˚
            vyvoj smerem outside-in
             ´       ˇ
            nepouz´vanı pr´pravku
                   ˇı ´ ´ ˇı     ˚
            vytvaˇenı metod pracujıcıch nad objekty
                 ´r ´               ´ ´
autor: Vıt Kotacka, ved.: RNDr. Jaroslav Prochazka, Ph.D. (OsU)
        ´      ˇ                           Pouz´ ´ JUnit a Mock frameworku pro testovanı Java EE architektury
                                              ˇitı                       ˚           ´ ´               7. 6. 2008   15 / 32
ˇı
  R´zene objekty
       ´




autor: Vıt Kotacka, ved.: RNDr. Jaroslav Prochazka, Ph.D. (OsU)
        ´      ˇ                           Pouz´ ´ JUnit a Mock frameworku pro testovanı Java EE architektury
                                              ˇitı                       ˚           ´ ´               7. 6. 2008   16 / 32
Simulace ˇivotnıho cyklu EJB
           z     ´




autor: Vıt Kotacka, ved.: RNDr. Jaroslav Prochazka, Ph.D. (OsU)
        ´      ˇ                           Pouz´ ´ JUnit a Mock frameworku pro testovanı Java EE architektury
                                              ˇitı                       ˚           ´ ´               7. 6. 2008   17 / 32
Navrhovy vzor Remote Facade
   ´     ´




autor: Vıt Kotacka, ved.: RNDr. Jaroslav Prochazka, Ph.D. (OsU)
        ´      ˇ                           Pouz´ ´ JUnit a Mock frameworku pro testovanı Java EE architektury
                                              ˇitı                       ˚           ´ ´               7. 6. 2008   18 / 32
Java Naming and Directory Interface




autor: Vıt Kotacka, ved.: RNDr. Jaroslav Prochazka, Ph.D. (OsU)
        ´      ˇ                           Pouz´ ´ JUnit a Mock frameworku pro testovanı Java EE architektury
                                              ˇitı                       ˚           ´ ´               7. 6. 2008   19 / 32
Nahrazenı JNDI stromu
          ´




autor: Vıt Kotacka, ved.: RNDr. Jaroslav Prochazka, Ph.D. (OsU)
        ´      ˇ                           Pouz´ ´ JUnit a Mock frameworku pro testovanı Java EE architektury
                                              ˇitı                       ˚           ´ ´               7. 6. 2008   20 / 32
Pr
   ˇekrytı kodu zavisleho na JNDI I.
         ´ ´     ´    ´




autor: Vıt Kotacka, ved.: RNDr. Jaroslav Prochazka, Ph.D. (OsU)
        ´      ˇ                           Pouz´ ´ JUnit a Mock frameworku pro testovanı Java EE architektury
                                              ˇitı                       ˚           ´ ´               7. 6. 2008   21 / 32
Pr
   ˇekrytı kodu zavisleho na JNDI II.
         ´ ´     ´    ´




autor: Vıt Kotacka, ved.: RNDr. Jaroslav Prochazka, Ph.D. (OsU)
        ´      ˇ                           Pouz´ ´ JUnit a Mock frameworku pro testovanı Java EE architektury
                                              ˇitı                       ˚           ´ ´               7. 6. 2008   22 / 32
Servlet – zpracovanı pozadavku I.
                   ´ ´ ˇ




autor: Vıt Kotacka, ved.: RNDr. Jaroslav Prochazka, Ph.D. (OsU)
        ´      ˇ                           Pouz´ ´ JUnit a Mock frameworku pro testovanı Java EE architektury
                                              ˇitı                       ˚           ´ ´               7. 6. 2008   23 / 32
Servlet – zpracovanı pozadavku II.
                   ´ ´ ˇ




autor: Vıt Kotacka, ved.: RNDr. Jaroslav Prochazka, Ph.D. (OsU)
        ´      ˇ                           Pouz´ ´ JUnit a Mock frameworku pro testovanı Java EE architektury
                                              ˇitı                       ˚           ´ ´               7. 6. 2008   24 / 32
Navrhovy vzor Front Controller
   ´     ´




autor: Vıt Kotacka, ved.: RNDr. Jaroslav Prochazka, Ph.D. (OsU)
        ´      ˇ                           Pouz´ ´ JUnit a Mock frameworku pro testovanı Java EE architektury
                                              ˇitı                       ˚           ´ ´               7. 6. 2008   25 / 32
Nastroje
   ´




    Buildovacı a testovacı nastroje
              ´           ´ ´
        IDE: Eclipse, NetBeans, IntelliJ IDEA, JBuilder
        Testovacı framework: JUnit, TestNG, jMock, EasyMock
                  ´
        Buildovacı nastroje: Ant, Maven
                    ´ ´




autor: Vıt Kotacka, ved.: RNDr. Jaroslav Prochazka, Ph.D. (OsU)
        ´      ˇ                           Pouz´ ´ JUnit a Mock frameworku pro testovanı Java EE architektury
                                              ˇitı                       ˚           ´ ´               7. 6. 2008   26 / 32
Eclipse




autor: Vıt Kotacka, ved.: RNDr. Jaroslav Prochazka, Ph.D. (OsU)
        ´      ˇ                           Pouz´ ´ JUnit a Mock frameworku pro testovanı Java EE architektury
                                              ˇitı                       ˚           ´ ´               7. 6. 2008   27 / 32
JUnit (Eclipse)




autor: Vıt Kotacka, ved.: RNDr. Jaroslav Prochazka, Ph.D. (OsU)
        ´      ˇ                           Pouz´ ´ JUnit a Mock frameworku pro testovanı Java EE architektury
                                              ˇitı                       ˚           ´ ´               7. 6. 2008   28 / 32
JUnit (konzole)




autor: Vıt Kotacka, ved.: RNDr. Jaroslav Prochazka, Ph.D. (OsU)
        ´      ˇ                           Pouz´ ´ JUnit a Mock frameworku pro testovanı Java EE architektury
                                              ˇitı                       ˚           ´ ´               7. 6. 2008   29 / 32
Ant (Eclipse)




autor: Vıt Kotacka, ved.: RNDr. Jaroslav Prochazka, Ph.D. (OsU)
        ´      ˇ                           Pouz´ ´ JUnit a Mock frameworku pro testovanı Java EE architektury
                                              ˇitı                       ˚           ´ ´               7. 6. 2008   30 / 32
Ant (konzole)




autor: Vıt Kotacka, ved.: RNDr. Jaroslav Prochazka, Ph.D. (OsU)
        ´      ˇ                           Pouz´ ´ JUnit a Mock frameworku pro testovanı Java EE architektury
                                              ˇitı                       ˚           ´ ´               7. 6. 2008   31 / 32
Zdroje
    Knihy
        J. B. Rainsberger. JUnit Recipes. Manning Publications.
        2004. ISBN 1932394230.
        Lasse Koskela. Test Driven: TDD and Acceptance TDD
        for Java Developers. Manning Publications. 2007. ISBN
        1932394850.
        Kent Beck. Programovanı ˇ´zene testy. Grada
                                 ´ ´ rı  ´
        Publishing, a.s. 2004. ISBN 80-247-0901-5.
        Bill Burke, Richard Monson-Haefel. Enterprise
        JavaBeans 3.0 (5th Edition). O’Reilly Media, Inc. 2006.
        ISBN 059600978X.
        Martin Fowler. Patterns of Enterprise Application
        Architecture. Addison-Wesley Professional. 2002. ISBN
        0321127420.
autor: Vıt Kotacka, ved.: RNDr. Jaroslav Prochazka, Ph.D. (OsU)
        ´      ˇ                           Pouz´ ´ JUnit a Mock frameworku pro testovanı Java EE architektury
                                              ˇitı                       ˚           ´ ´               7. 6. 2008   32 / 32

More Related Content

Použití JUnit a Mock frameworků pro testování Java EE architektury

  • 1. Pouzitı JUnit a Mock frameworku ˇ ´ ˚ pro testovanı Java EE architektury ´ ´ pr ˇedobhajoba bakalaˇske prace ´r ´ ´ autor: Vıt Kotac ´ ˇka, ved.: RNDr. Jaroslav Prochazka, Ph.D. ´ Ostravska univerzita ´ 7. 6. 2008 autor: Vıt Kotacka, ved.: RNDr. Jaroslav Prochazka, Ph.D. (OsU) ´ ˇ Pouz´ ´ JUnit a Mock frameworku pro testovanı Java EE architektury2008 ˇitı ˚ ´ ´ 7. 6. 1 / 32
  • 2. Obsah 1 Testovanı softwaru, typy testu ´ ´ ˚ 1 Zpusoby testovanı Java EE architektury ˚ ´ ´ 1 JUnit testovanı ´ ´ 1 Mock testovanı ´ ´ 1 Porovnanı JUnit a Mock testovanı ´ ´ ´ ´ 1 Testovanı Java EE architektury ´ ´ 1 Nastroje ´ autor: Vıt Kotacka, ved.: RNDr. Jaroslav Prochazka, Ph.D. (OsU) ´ ˇ Pouz´ ´ JUnit a Mock frameworku pro testovanı Java EE architektury2008 ˇitı ˚ ´ ´ 7. 6. 2 / 32
  • 3. Testovanı softwaru, typy testu ´ ´ ˚ Testovanı softwaru ´ ´ proces pro zajistenı kvality softwaru ˇˇ ´ zpusob, jak v systemu odhalit chyby ˚ ´ Typy testu ˚ jednotkove testy ´ integrac ´ testy ˇnı systemove testy ´ ´ end-to-end testy vykonnostnı testy ´ ´ zateˇove testy ´ ˇz ´ bezpec ˇnostnı testy ´ testy pouzitelnosti ˇ akceptac ´ testy ˇnı autor: Vıt Kotacka, ved.: RNDr. Jaroslav Prochazka, Ph.D. (OsU) ´ ˇ Pouz´ ´ JUnit a Mock frameworku pro testovanı Java EE architektury2008 ˇitı ˚ ´ ´ 7. 6. 3 / 32
  • 4. Jednotkove testovanı ´ ´ ´ autor: Vıt Kotacka, ved.: RNDr. Jaroslav Prochazka, Ph.D. (OsU) ´ ˇ Pouz´ ´ JUnit a Mock frameworku pro testovanı Java EE architektury2008 ˇitı ˚ ´ ´ 7. 6. 4 / 32
  • 5. Integracnı testovanı ˇ ´ ´ ´ autor: Vıt Kotacka, ved.: RNDr. Jaroslav Prochazka, Ph.D. (OsU) ´ ˇ Pouz´ ´ JUnit a Mock frameworku pro testovanı Java EE architektury2008 ˇitı ˚ ´ ´ 7. 6. 5 / 32
  • 6. Systemove testovanı ´ ´ ´ ´ autor: Vıt Kotacka, ved.: RNDr. Jaroslav Prochazka, Ph.D. (OsU) ´ ˇ Pouz´ ´ JUnit a Mock frameworku pro testovanı Java EE architektury2008 ˇitı ˚ ´ ´ 7. 6. 6 / 32
  • 7. Problem pr testovanı Java EE architektury ´ ˇi ´ ´ Problem ´ Zavislost kodu aplikace na objektech kontejneru nebo ´ ´ aplikac ´ho serveru (Web, EJB, JNDI). ˇnı Zavislost servletu na objektech kontejneru ´ public class MyServlet extends HttpServlet { public void doGet( HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { ... } } autor: Vıt Kotacka, ved.: RNDr. Jaroslav Prochazka, Ph.D. (OsU) ´ ˇ Pouz´ ´ JUnit a Mock frameworku pro testovanı Java EE architektury2008 ˇitı ˚ ´ ´ 7. 6. 7 / 32
  • 8. Zpusoby testovanı Java EE architektury ˚ ´ ´ testovanı v izolaci (JUnit, Mock Objects) ´ ´ testovanı uvnitr kontejneru (Cactus) ´ ´ ˇ testovanı vne kontejneru (ServletUnit) ´ ´ ˇ autor: Vıt Kotacka, ved.: RNDr. Jaroslav Prochazka, Ph.D. (OsU) ´ ˇ Pouz´ ´ JUnit a Mock frameworku pro testovanı Java EE architektury2008 ˇitı ˚ ´ ´ 7. 6. 8 / 32
  • 9. JUnit testovanı ´ ´ Princip JUnit izolovanı testovane komponenty (tr´dy) ´ ´ ´ ˇı oveˇenı pomocı tvrzenı (assertion) ˇr ´ ´ ´ TDD – Test Driven Development Princip test first 1 Pr ´ nı testu ˇida ´ 2 Spustenı testu (novy test neprojde) ˇˇ ´ ˚ ´ 3 Implementace produktivnıho kodu ´ ´ 4 Spustenı testu (novy test projde) ˇˇ ´ ˚ ´ 5 Refaktorovanı kodu ´ ´ ´ autor: Vıt Kotacka, ved.: RNDr. Jaroslav Prochazka, Ph.D. (OsU) ´ ˇ Pouz´ ´ JUnit a Mock frameworku pro testovanı Java EE architektury2008 ˇitı ˚ ´ ´ 7. 6. 9 / 32
  • 10. JUnit 3.8 public class MyTest extends TestCase { protected void setUp() { ... } protected void tearDown() { ... } public void testDoSomething() { ... } } autor: Vıt Kotacka, ved.: RNDr. Jaroslav Prochazka, Ph.D. (OsU) ´ ˇ Pouz´ ´ JUnit a Mock frameworku pro testovanı Java EE architektury ˇitı ˚ ´ ´ 7. 6. 2008 10 / 32
  • 11. JUnit 4.x @RunWith(JMock.class) public class MyTest { @Before public void initialize() { } @After public void cleanAllMess() { } @Test public void doSomething() { ... } } autor: Vıt Kotacka, ved.: RNDr. Jaroslav Prochazka, Ph.D. (OsU) ´ ˇ Pouz´ ´ JUnit a Mock frameworku pro testovanı Java EE architektury ˇitı ˚ ´ ´ 7. 6. 2008 11 / 32
  • 12. Zavislost objektu ´ ˚ autor: Vıt Kotacka, ved.: RNDr. Jaroslav Prochazka, Ph.D. (OsU) ´ ˇ Pouz´ ´ JUnit a Mock frameworku pro testovanı Java EE architektury ˇitı ˚ ´ ´ 7. 6. 2008 12 / 32
  • 13. Mock testovanı ´ ´ Double objekty stub: natvrdo napsany kod, prazdna implementace, ´ ´ ´ ´ vracı defaultnı hodnoty (0, false, null) ´ ´ fake: „zkratkovita“, zjednodusena implementace ´ ˇ ´ mock: implementuje rozhranı nahrazovaneho objektu, ´ ´ definuje chovanı objektu ´ ´ autor: Vıt Kotacka, ved.: RNDr. Jaroslav Prochazka, Ph.D. (OsU) ´ ˇ Pouz´ ´ JUnit a Mock frameworku pro testovanı Java EE architektury ˇitı ˚ ´ ´ 7. 6. 2008 13 / 32
  • 14. Pouzitı Mock objektu (jMock) ˇ ´ autor: Vıt Kotacka, ved.: RNDr. Jaroslav Prochazka, Ph.D. (OsU) ´ ˇ Pouz´ ´ JUnit a Mock frameworku pro testovanı Java EE architektury ˇitı ˚ ´ ´ 7. 6. 2008 14 / 32
  • 15. Porovnanı JUnit a Mock testovanı ´ ´ ´ ´ Test Driven Development (TDD) verifikace stavu (hodnoty) pouz´vanı realnych objektu ˇı ´ ´ ´ ´ ˚ vyvoj smerem middle-out ´ ˇ komplexnı znovupouzitelne pr´pravky ´ ˇ ´ ˇı vytvaˇenı metod vracejıcıch hodnotu ´r ´ ´ ´ Behavior Driven Development (BDD) verifikace chovanı´ ´ pouz´vanı Mock objektu ˇı ´ ´ ˚ vyvoj smerem outside-in ´ ˇ nepouz´vanı pr´pravku ˇı ´ ´ ˇı ˚ vytvaˇenı metod pracujıcıch nad objekty ´r ´ ´ ´ autor: Vıt Kotacka, ved.: RNDr. Jaroslav Prochazka, Ph.D. (OsU) ´ ˇ Pouz´ ´ JUnit a Mock frameworku pro testovanı Java EE architektury ˇitı ˚ ´ ´ 7. 6. 2008 15 / 32
  • 16. ˇı R´zene objekty ´ autor: Vıt Kotacka, ved.: RNDr. Jaroslav Prochazka, Ph.D. (OsU) ´ ˇ Pouz´ ´ JUnit a Mock frameworku pro testovanı Java EE architektury ˇitı ˚ ´ ´ 7. 6. 2008 16 / 32
  • 17. Simulace ˇivotnıho cyklu EJB z ´ autor: Vıt Kotacka, ved.: RNDr. Jaroslav Prochazka, Ph.D. (OsU) ´ ˇ Pouz´ ´ JUnit a Mock frameworku pro testovanı Java EE architektury ˇitı ˚ ´ ´ 7. 6. 2008 17 / 32
  • 18. Navrhovy vzor Remote Facade ´ ´ autor: Vıt Kotacka, ved.: RNDr. Jaroslav Prochazka, Ph.D. (OsU) ´ ˇ Pouz´ ´ JUnit a Mock frameworku pro testovanı Java EE architektury ˇitı ˚ ´ ´ 7. 6. 2008 18 / 32
  • 19. Java Naming and Directory Interface autor: Vıt Kotacka, ved.: RNDr. Jaroslav Prochazka, Ph.D. (OsU) ´ ˇ Pouz´ ´ JUnit a Mock frameworku pro testovanı Java EE architektury ˇitı ˚ ´ ´ 7. 6. 2008 19 / 32
  • 20. Nahrazenı JNDI stromu ´ autor: Vıt Kotacka, ved.: RNDr. Jaroslav Prochazka, Ph.D. (OsU) ´ ˇ Pouz´ ´ JUnit a Mock frameworku pro testovanı Java EE architektury ˇitı ˚ ´ ´ 7. 6. 2008 20 / 32
  • 21. Pr ˇekrytı kodu zavisleho na JNDI I. ´ ´ ´ ´ autor: Vıt Kotacka, ved.: RNDr. Jaroslav Prochazka, Ph.D. (OsU) ´ ˇ Pouz´ ´ JUnit a Mock frameworku pro testovanı Java EE architektury ˇitı ˚ ´ ´ 7. 6. 2008 21 / 32
  • 22. Pr ˇekrytı kodu zavisleho na JNDI II. ´ ´ ´ ´ autor: Vıt Kotacka, ved.: RNDr. Jaroslav Prochazka, Ph.D. (OsU) ´ ˇ Pouz´ ´ JUnit a Mock frameworku pro testovanı Java EE architektury ˇitı ˚ ´ ´ 7. 6. 2008 22 / 32
  • 23. Servlet – zpracovanı pozadavku I. ´ ´ ˇ autor: Vıt Kotacka, ved.: RNDr. Jaroslav Prochazka, Ph.D. (OsU) ´ ˇ Pouz´ ´ JUnit a Mock frameworku pro testovanı Java EE architektury ˇitı ˚ ´ ´ 7. 6. 2008 23 / 32
  • 24. Servlet – zpracovanı pozadavku II. ´ ´ ˇ autor: Vıt Kotacka, ved.: RNDr. Jaroslav Prochazka, Ph.D. (OsU) ´ ˇ Pouz´ ´ JUnit a Mock frameworku pro testovanı Java EE architektury ˇitı ˚ ´ ´ 7. 6. 2008 24 / 32
  • 25. Navrhovy vzor Front Controller ´ ´ autor: Vıt Kotacka, ved.: RNDr. Jaroslav Prochazka, Ph.D. (OsU) ´ ˇ Pouz´ ´ JUnit a Mock frameworku pro testovanı Java EE architektury ˇitı ˚ ´ ´ 7. 6. 2008 25 / 32
  • 26. Nastroje ´ Buildovacı a testovacı nastroje ´ ´ ´ IDE: Eclipse, NetBeans, IntelliJ IDEA, JBuilder Testovacı framework: JUnit, TestNG, jMock, EasyMock ´ Buildovacı nastroje: Ant, Maven ´ ´ autor: Vıt Kotacka, ved.: RNDr. Jaroslav Prochazka, Ph.D. (OsU) ´ ˇ Pouz´ ´ JUnit a Mock frameworku pro testovanı Java EE architektury ˇitı ˚ ´ ´ 7. 6. 2008 26 / 32
  • 27. Eclipse autor: Vıt Kotacka, ved.: RNDr. Jaroslav Prochazka, Ph.D. (OsU) ´ ˇ Pouz´ ´ JUnit a Mock frameworku pro testovanı Java EE architektury ˇitı ˚ ´ ´ 7. 6. 2008 27 / 32
  • 28. JUnit (Eclipse) autor: Vıt Kotacka, ved.: RNDr. Jaroslav Prochazka, Ph.D. (OsU) ´ ˇ Pouz´ ´ JUnit a Mock frameworku pro testovanı Java EE architektury ˇitı ˚ ´ ´ 7. 6. 2008 28 / 32
  • 29. JUnit (konzole) autor: Vıt Kotacka, ved.: RNDr. Jaroslav Prochazka, Ph.D. (OsU) ´ ˇ Pouz´ ´ JUnit a Mock frameworku pro testovanı Java EE architektury ˇitı ˚ ´ ´ 7. 6. 2008 29 / 32
  • 30. Ant (Eclipse) autor: Vıt Kotacka, ved.: RNDr. Jaroslav Prochazka, Ph.D. (OsU) ´ ˇ Pouz´ ´ JUnit a Mock frameworku pro testovanı Java EE architektury ˇitı ˚ ´ ´ 7. 6. 2008 30 / 32
  • 31. Ant (konzole) autor: Vıt Kotacka, ved.: RNDr. Jaroslav Prochazka, Ph.D. (OsU) ´ ˇ Pouz´ ´ JUnit a Mock frameworku pro testovanı Java EE architektury ˇitı ˚ ´ ´ 7. 6. 2008 31 / 32
  • 32. Zdroje Knihy J. B. Rainsberger. JUnit Recipes. Manning Publications. 2004. ISBN 1932394230. Lasse Koskela. Test Driven: TDD and Acceptance TDD for Java Developers. Manning Publications. 2007. ISBN 1932394850. Kent Beck. Programovanı ˇ´zene testy. Grada ´ ´ rı ´ Publishing, a.s. 2004. ISBN 80-247-0901-5. Bill Burke, Richard Monson-Haefel. Enterprise JavaBeans 3.0 (5th Edition). O’Reilly Media, Inc. 2006. ISBN 059600978X. Martin Fowler. Patterns of Enterprise Application Architecture. Addison-Wesley Professional. 2002. ISBN 0321127420. autor: Vıt Kotacka, ved.: RNDr. Jaroslav Prochazka, Ph.D. (OsU) ´ ˇ Pouz´ ´ JUnit a Mock frameworku pro testovanı Java EE architektury ˇitı ˚ ´ ´ 7. 6. 2008 32 / 32