EasyMock dla nieznanych parametrów – matchers

      2 min read           ·

W poprzednim poście pokrótce opisałem sposób działania EasyMock. W tym poście chciałbym skupić się na jednej z możliwości tej biblioteki. Podczas testowania zdarzają się przypadki kiedy wiemy, że dana metoda obiektu zostanie wywołana i jaki wynik powinna zwrócić dla naszych testów, ale nie chcemy (albo nie jesteśmy w stanie) dokładnie analizować jakie parametry wywołania otrzyma. W takim właśnie przypadku możemy użyć matcher’ów EasyMock’a. Wiedząc, że na mock’owanym obiekcie zostanie wywołana metoda xyz(String,int,long), równocześnie nie znając dokładnych wartości parametrów możemy przygotować mock na przyjęcie różnych parametrów.


EasyMock – łatwy sposób na testy jednostkowe

      3 min read           ·

EasyMock to biblioteka języka Java, która umożliwia tworzenie obiektów w locie i wykorzystywanie ich jako mock’ów (imitacji prawdziwych obiektów). Dzięki tej możliwości testowanie jednostkowe może być o wiele prostsze, ponieważ możemy zastąpić prawdziwe, często ciężkie obiekty przez mock’i. Dodatkowo pozwala nam się to skupić na testowaniu jednej klasy podczas gdy zachowanie obiektów innych klas możemy dokładnie zaplanować. Przykładowo mając klasę: ` public class Car { private Engine engine; private Computer onboardComputer;


Web developement – alternatywa dla PHP

      4 min read           ·

Jeśli chodzi o programowanie aplikacji internetowych to nie jest tajemnicą, że niepodzielnie żądzi tu nieśmiertelny język PHP obecny aktualnie w wersji 5. Niestety prawdą jest też, że w wielu aspektach jest to język przestarzały i nieprofesjonalny. Taki stan rzeczy zmieniają nieco frameworki takie jak Symfony, CodeIgniter czy wreszcie Zend Framework tworzony przez tą samą firmę która zajmuje sie rozwojem samego PHP. Mimo wszystko, po dłuższym używaniu PHP i spróbowaniu nieco (Symfony, CodeIgniter), lub nieco bardziej (ZF) frameworków do niego oceniam, że jest to język któremu daleko do uporządkowania i profesjonalizmu znanego z języków wysokiego poziomu używanych do pisania aplikacji desktopowych (Java, C++).