Kilka pytań odnośnie testowania

0

Witam wszystkich,
mam kilka pytań odnośnie testowania, a nie chcę za każdym razem zakładać nowego wątku.

  1. Czy można przetestować prywatną klasę? Jeśli tak to jak?
  2. Czy można przetestować klasę o niewidocznym konstruktorze?
  3. Czy jeśli klasa / metoda jest otrzymuje od nas adnotacje np.: @XmlElement(name="Blabla") to czy jesteśmy w stanie napisać test sprawdzający to?

Szukałem tego typu wątków, ale nie znalazłem nic po za mechanizmem
refleksji stosowanym do prywatnych zmiennych albo metod. :/


Pytań na pewno będzie więcej z czasem :)

0

Nie testuj prywatnych metod i zmiennych.

Są możliwe dwa sposoby podejścia do tego tematu:

  1. Testowanie jedynie publicznych metod.
    http://lassekoskela.com/thoughts/24/test-everything-but-not-private-methods/
  2. Zmiana metod prywatnych na package private i umieszczenie testów w tym samym pakiecie:
    http://java.dzone.com/articles/unit-testing-private-methods
0

Kolejne pytanie,

  1. Czy jest możliwe za pomocą mechanizmu refleksji dostanie się / ustawienie prywatnych pól klasy abstrakcyjnej?

Odpowiedź:
znalazłem rozwiązanie, podobno jest to także mechanizm refleksji, nie mniej jednak różni się trochę od schematu który używam. Najważniejsze że działa.
link: http://forgetfulprogrammer.wordpress.com/2011/06/13/java-reflection-class-getfields-and-class-getdeclaredfields/

0

4 takie rzeczy zwykle udostępnia framework do testów. EasyMock+PowerMock mają do takich zadań klasę Whitebox. Wygodniejsze niż ręczne wywoływanie refleksji.

0

Jeśli mam blok try - catch, to jak mogę przetestować łapanie wyjątku? Prosiłbym o jakiś przykład.

1 użytkowników online, w tym zalogowanych: 0, gości: 1