Ponieważ to pytanie jest wciąż otwarte, równie dobrze mogę się zastanowić.
Dobrą wiadomością jest to, że w ciągu ostatnich 5 lat narzędzia Open Source naprawdę dojrzały i wystartowały w kosmos, zła wiadomość jest taka, że jest ich tak wiele.
Oto moje myśli: -
Jmeter vs Grinder
Jmeter jest oparty na specyfikacji stylu XML, która jest zbudowana za pomocą GUI.
Grinder korzysta ze skryptów Jython w ramach wielowątkowej architektury Java, więc jest bardziej zorientowany na programistów.
Oba narzędzia będą obsługiwać HTTP i HTTPS i będą miały rejestrator proxy, aby zacząć. Oba narzędzia wykorzystują model kontrolera do sterowania wieloma agentami testowymi, więc skalowalność nie stanowi problemu (biorąc pod uwagę dostęp do chmury).
Co jest lepsze: -
Trudne wezwanie, ponieważ krzywa uczenia się jest stroma przy użyciu obu narzędzi, gdy wchodzisz w bardziej skomplikowane wymagania skryptowe dotyczące przepisywania adresów URL, korelacji, dostarczania unikalnych danych dla każdego użytkownika wirtualnego i symulacji po raz pierwszy lub powracających użytkowników (poprzez manipulowanie nagłówkami HTTP).
Powiedziałem, że zacznę od Jmeter, ponieważ to narzędzie ma ogromną rzeszę fanów i istnieje wiele przykładów i samouczków w Internecie na temat korzystania z tego narzędzia. Jeśli i kiedy dojdziesz do „bloku drogowego”, jest to coś, czego nie możesz „łatwo” zrobić z Jmeter, to spójrz na Grinder. Dobra wiadomość jest taka, że oba te narzędzia mają takie same wymagania Java, a rozwiązanie typu „mieszaj i dopasowuj” nie jest wykluczone.
Coś nowego do dodania - przeglądarki bezgłowe obsługujące wiele instancji Selenium WebDriver.
Jest to stosunkowo nowe podejście, ponieważ opiera się na dostępności zasobów, które można teraz udostępnić z chmury. Przy takim podejściu pobierany jest skrypt Selenium (WebDriver) i uruchamiany w bezgłowej przeglądarce (tj. WebDriver = New HtmlUnitDriver ()) w wielu wątkach.
Z doświadczenia wynika, że z Amazon M1 Small Instance można wykonać około 25 instancji „przeglądarek bezgłowych”.
Oznacza to, że wszystkie problemy z korelacją i przepisywaniem adresów URL znikają po zmianie przeznaczenia skryptów testowania funkcjonalnego na skrypty testowania wydajności.
Skalowalność jest zagrożona, ponieważ więcej maszyn wirtualnych będzie potrzebnych do sterowania obciążeniem, w porównaniu ze sterownikiem HTTP, takim jak Grinder lub Jmeter. To powiedziawszy, jeśli chcesz prowadzić 500 wirtualnych użytkowników, to dzięki 20 małym instancjom Amazon (6 centów za godzinę) przy koszcie zaledwie 1,20 USD za godzinę daje obciążenie bardzo zbliżone do rzeczywistego doświadczenia użytkownika.