Selenium RC - stručný úvod

Když jsem tu zveřejnil článek o Seleniu coby nástroji pro automatizované testování webových aplikací, ozvalo se pár z vás s připomínkou, která byla na místě. Zmíněný článek se plně věnoval Selenium IDE, což (jak je v článku uvedeno) je plugin do prohlížeče Mozilla Firefox umožňující udělat z tohoto prohlížeče nástroj automatizovaného testování. Jako hlavní nevýhodu tohoto řešení jsem uvedl fskt, že testy jsou tak vázané právě jen na tento prohlížeč. Připomínky, které jsem dostal, se týkaly toho, že existuje ještě jedna verze Selenia, která tento problém nemá. Jde o Selenium RC. A to je pravda. Dnes tu chci tento nástroj jen velice stručně uvést. Do budoucna bych tu rád sepsal pár příkladů jeho použití.

Selenium IDE a Selenium RC jsou jedna rodina, což byste při prvním pohledu asi neřekli. Selenium IDE je v podstatě "klikací" záležitost. Má  grafické rozhraní a práci s ním zvládne skoro každý, kdo je počítačově alespoň trochu zdatný. Tedy minimálně základní operace s ním. Selenium RC je pravý opak svého příbuzného. Má podobu knihoven a zdrojového kódu, je zde server a API, zkátka prostor pro vývojáře a testera ochotného ladit si vlastní nástroj na úrovni kódu.

Označení Selenium RC není úplně přesné. Pokud si budete chtít stáhnout Selenium RC, zjistíte, že taková verze (již) neexistuje. Ona písmena RC znamenají Remote Controle a jde o serverovou část celého řešení nástroje. Stručně řečeno, pokud chcete pracovat se Seleniem RC, musíte mít stažený a spuštěný Selenium Server (nové označení původního Selenia RC). K němu se připojíte pomocí klienta a v něm spustíte požadovaný test. Jde tedy o klasické server-klient řešení.

Proč by se vlastně tester měl chtít zabývat Seleniem RC? Pokud jsme Slenium IDE kritizovali za nemožnost přenst testy na jiné prohlížeče, zde takový problém není. Ale to není zdaleka jediná výhoda. Klientské ovladače, které slouží ke spouštění testů na serverové části, jsou k dispozici v několika programovacích jazycích. Mezi ty hlavní se řadí Java, C#, Python a Ruby. Už to naznačuje, ze Selenium má velký záběr.

Selenium RC má jednu hlavní výhodu - poskytuje prostor. Tester si může vytvořit svůj vlastní testovací nástroj, který postaví na knihovnách Selenia. Není zde žádné zásadní omezení (alespoň já o žádném nevím). Testování se také dostává mnohem blíže k vývoji, kdy testy mohou být již součástí vyvíjené aplikace. Zkrátka pohybujeme se na úrovni kódu a zde je mnoho prostoru pro vlastní kreativitu.

Selenium RC navíc umí spolupracovat se zmíněným Selenium IDE. Tedy to není úplně přesné. Zkrátka Selenium RC umožňuje spouštění testů, které byly vytvořeny pomocí Selenium IDE a byly z něj vyexportovány.

Jaká je hlavní nevýhoda tohoto nástroje. Asi především to, co už bylo uvedeno jako výhoda. Nejde totiž o skutečný nástroj. Jde vlastně o nějakou množinu frameworků. Pokud budeme například pracovat s Java verzí klienta, pak se budeme pohybovat na úrovni Selenium knihovnách klienta, serveru a JUnit. Jinak řečeno, není zde k dispozici instantní nástroj, který by bylo možné rovnou (nebo po krátkém zaškolení) použít. Je nutné tento nástro vytvořit a to nemusí být nutně v možnostech testera, časových možnostech projektu nebo celkově smysluplné.

Každopádně Selenium RC je zajímavé téma a já se k němu určitě vrátím.

 

Nejbližší události


Testování software, Powered by Joomla!; Joomla templates by SG web hosting