Kurs Selenium
opublikowany przez streser 26, lip, 2009, w kategoriach Agile, Automatyzacja, Praca, Technologie, Testowanie
Na blogu pojawił się jakiś czas temu kurs Selenium. To dopiero początek! W mitycznych wolnych chwilach postaram się go uaktualniać i dopisywać różne ciekawe rzeczy z tym narzędziem powiązane.
Dlaczego oddzielna strona – a dlatego, że jest to narzędzie na tyle rozbudowane, oraz posiadające na tyle dużo możliwości (często trudnych do odkrycia), że warto mu poświęcić osobną stronę. Jeśli chodzi polskojęzyczny Internet ciężko jest znaleźć cokolwiek na ten temat, więc może komuś przyda się to co tutaj zamieszczę… Na razie jest tego niewiele – kilka podstawowych pojęć i sposób instalacji… Wszystko opisuję raczej z pamięci, więc mogą być tam małe błędy… Gdyby ktoś miał jakieś uwagi piszcie na maila… Gdyby ktoś odkrył coś ciekawego w tym narzędziu także proszę o kontakt…
Jak już pisałem Selenium pomimo tego, że jest to Open Source, jest narzędzie niesamowicie rozbudowany, potrafiącym przetestować prawie wszystko co jest w stanie obsłużyć przeglądarka internetowa, a ponadto umożliwia testowanie w różnych środowiskach… Ale o tym wszystkim wkórtce na stronach kursu…
Selenium jest idealnym narzędziem wspomagającym testowanie aplikacji zarządzanych agile’owo. Świetnie sprawdza się w continues integration. Za jego pomocą można łatwo przetestować większość java script na stronie, do których testy jednostkowe są często traktowane po macoszemu. Jeśłi testy są dobrze napisane i zaplanowane ich utrzymanie wcale nie jest tak kosztowne jak by się to wydawało.
Grudzień 2nd, 2010 on 23:04
Hey, czekam na coś więcej o automatyzacji w selenium. Jakiś poradnik dla początkujących też by się przydał. Liczę też na twoją pomoc wrazie potrzeby, jestem świeżo po ITSQB a automatyzacja to mój dalszy cel rozwoju zawodowego. Pozdrawiam !!!
Kwiecień 4th, 2011 on 11:49
@ado: powodzenia… dla mnie rowniez to wyzwanie jak i cele.
@Wiktor: szlachetny cel i dobre zadanie.. mysle ze moglbys udaktualic kurs jesli chodzi o web-driver i selenium-standalone-server. Sam musze udokumentowac moja walke bo jak sie okazalo (ucze sie i jestem na poczatku “zabawy” z tym narzedziem) export do javy i proba uruchomienia konczyly sie w moim wypadku pare razy niepowodzeniem.
Uzycie Selenium dla appsow webowych w procesie CI ma wiele sensu. A ze CI i wlaczanie don testow lezy na moim biurku to chce dobrze sie z tego zadania wywiazac.
pozdro
Kwiecień 4th, 2011 on 12:02
Dzięki za wsparcie – w przygotowaniu nowa wersja kursu w nowej formie – będą pojedyncze notki zagregowane w jednej kategori (jest to łatwiejsze w utrzymaniu, a także liczę na lepszy feedback i uwagi), niestety jak zwykle brak czasu żeby wszystko dopracować i sprawdzić w praktyce :/
Wkrótce (maj/czerwiec) będziemy prowadzić z kolegą szkolenie/warsztaty z automatyzacji testów (selenium TEŻ tam będzie), więc myślę, że przy okazji opracowywania materiałów uda mi się także uaktualnić kurs tutaj
Lipiec 12th, 2011 on 17:06
Witam,
powróciłem po ponad połowie roku. Mogę powiedzieć, że podoba mi się automatyzacja w Selenium, już coś potrafię (nawet nie banalne rzeczy). Konwertowanie do Javy znacznie ułatwia mi pracę. Niedawno walczyłem z wpisywaniem, generowaniem peselu i następnie wydobyciu z niego daty urodzenia do różnych wniosków. Mam kilka problemów – np. istnieje pewna strona która ukazuje klientów w kolumnach (jak w excelu) – przy tworzeniu nowego klienta wpada on na sam koniec listy. Generuje się obok niego link który chce żeby selenium klinkął (każdy klient ma taki sam klient więc po prostu click nie zadziała). Jak to zrobić żeby przechwycił akurat tego ostatniego i kliknął w link wygenerowany obok niego a nie innego?
Lipiec 18th, 2011 on 16:41
Już sobie z tym poradziłem:
String identKolumn = “//div[@id='paginatedTable']/div/table/tbody/tr[";
int i=2;
while(selenium.isElementPresent(identKolumn i "]” “/td[9]/div/form/dl/div/div[2]/select”)){
i ;
}
i–;
selenium.select(“//div[@id='paginatedTable']/div/table/tbody/tr[" i "]” “/td[9]/div/form/dl/div/div[2]/select”, “label=Umowa do wydrukowania”);
selenium.click(“//div[@id='paginatedTable']/div/table/tbody/tr[" i "]” “/td[9]/div/form/dl/div[2]/div[2]/input”);