Tuesday, January 17, 2006

Watir rocks!

Ruby coraz bardziej daje o sobie znać na świecie. Nie tylko dlatego, iż jest świetnym językiem programowania, ale także dlatego, że powstaje w nim coraz więcej genialnych projektów.

Szukając sposobu na testowanie gui aplikacji webowych nie mogłem do tej pory znaleźć idealnego rozwiązania. Używałem JMetera, który posiada możliwość porównywania strony wynikowej z żądaną zawartością, jednak takie rozwiązanie było dość ograniczone (nie można było testować AJAXowych aplikacji). Tymczasem technologia idzie do przodu - coraz więcej stron używa skomplikowanego JavaScriptu, więc i narzędzia do testowania muszą się zmieniać. JMetera mogłem ze spokojem odłożyć na półkę, gdy na rubyforge.org znalazłem świętego grala do testów aplikacji webowych.

Watir to projekt umożliwiający symulowanie interakcji użytkownika z przeglądarką. Umożliwia symulowanie działań użytkownika - klikania na buttony, wypełniania formularzy a nawet poruszania myszką. Zasada działania programu jest prosta: piszemy program (test jednostkowy), który odpala przeglądarkę, wykonuje określone czynności i sprawdza wyniki. Podczas testu na żywo widzimy co dzieje się w przeglądarce. Podsumowując program genialny bo prosty i intuicyjny. Oczywiście cały kod testujący piszemy w Ruby :D

Friday, January 13, 2006

Ruby forever!

Minęły 2 miesiące od kiedy poraz pierwszy zetknąłem się z językiem Ruby. Jednak przez ostatni miesiąc szczególnie się nim interestowałem - odwiedzałem serwisy jemu poświęcone, stawiałem różnorodne railsowe web-aplikacje, no i oczywiście programowałem w nim (i w Ruby on Rails również).

Muszę przyznać, że Ruby stał się moim ulubionym językiem. Pomimo, iż w Javie programuję już szmat czasu, to jednak Java chyba nigdy nie wydawała mi się tak genialna jak Ruby. Programując w nim mogłem zapomnieć o conajmniej kilkunastu wzorcach projektowych (w Rubym są one po prostu niepotrzebne!).

Poczułem w końcu (od czasów gdy stworzyłem swoją pierwszą stronę w PHP) przyjemność tworzenia - świadczyć może o tym fakt, iż odpowiednik biblioteki Olitext (napisanej w Javie) stworzyłem w Rubym w zaledwie tydzień (czyli ponad 4x szybciej niz w Javie!). Nie zdarzały mi się momenty gdy technologia stawała mi na drodze - momenty gdy więcej musiałem się zastanawiać nad sposobem użycia bibliotek czy nad strukturą klas aniżeli nad samą implementacją.

Dlatego i Wam szczególnie polecam ten język! :)