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

7 comments:

Anonymous said...

jakies znaczace roznice w stosunku do ieUnit sa (z praktycznego punktu widzenia)? na szybko przedarlem sie przez tutorial i wyglada podobnie.

Unknown said...

Muszę przyznać iż nie znałem do tej pory ieUnit. Okazuje się, że projekty mają podobne możliwości. W IeUnit do pisania testów używa się JavaScript, zaś w Watirze języka Ruby. Wg mnie ten ostatni się znacznie lepiej nadaje do programowania, więc ja wybieram Watir (choć to tylko moja subiektywna ocena).

Unknown said...

Ponadto Watir jako, że jest napisany w języku Ruby umożliwia pisanie programów w locie i uruchamianie ich za pomocą IRB.

Anonymous said...

Nie lubie rozwiązań IE-only. Z Selenium (http://www.openqa.org/selenium/) mozna testowac w firefoksie, czyli tak naprawde na innym OS-ie.

Anonymous said...

tylko ruby i rubi, przyjdzie python3, perl6, .net3, groovy a przcierz i tak każdy dobrze wie, że assembler jest najlepszejszy ;)

Anonymous said...

Ruby 2.0 też przyjdzie, w 1.9 devel też sporo się dzieje
http://eigenclass.org/hiki.rb?Changes+in+Ruby+1.9

Anonymous said...

no i jeszcze YARV...!