{"id":720,"date":"2021-11-19T15:50:43","date_gmt":"2021-11-19T15:50:43","guid":{"rendered":"https:\/\/testeroprogramowania.pl\/?p=720"},"modified":"2021-12-10T06:23:32","modified_gmt":"2021-12-10T06:23:32","slug":"pierwszy-test-automatyczny","status":"publish","type":"post","link":"https:\/\/testeroprogramowania.pl\/index.php\/2021\/11\/19\/pierwszy-test-automatyczny\/","title":{"rendered":"Pierwszy test automatyczny &#8211; plan gry"},"content":{"rendered":"\n<p style=\"text-align:left\">Chcia\u0142bym pom\u00f3c Ci stworzy\u0107 sw\u00f3j pierwszy test automatyczny na poziomie interfejsu u\u017cytkownika. Co b\u0119dzie robi\u0142 Nasz test? B\u0119dzie klika\u0142 po aplikacji internetowej tak jak prawdziwy u\u017cytkownik i weryfikowa\u0142 czy wykonane akcje powoduj\u0105 konkretne zachowanie aplikacji. <\/p>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"768\" src=\"https:\/\/testeroprogramowania.pl\/wp-content\/uploads\/2021\/11\/journey-1130732_1280-1024x768.jpg\" alt=\"\" class=\"wp-image-721\" srcset=\"https:\/\/testeroprogramowania.pl\/wp-content\/uploads\/2021\/11\/journey-1130732_1280-1024x768.jpg 1024w, https:\/\/testeroprogramowania.pl\/wp-content\/uploads\/2021\/11\/journey-1130732_1280-300x225.jpg 300w, https:\/\/testeroprogramowania.pl\/wp-content\/uploads\/2021\/11\/journey-1130732_1280-768x576.jpg 768w, https:\/\/testeroprogramowania.pl\/wp-content\/uploads\/2021\/11\/journey-1130732_1280.jpg 1280w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Jak b\u0119dzie wygl\u0105da\u0142 test?<\/h2>\n\n\n\n<p style=\"text-align:left\">Test b\u0119dzie polega\u0142 na tym, \u017ce otworzymy przegl\u0105dark\u0119 internetow\u0105. Nast\u0119pnie spr\u00f3bujemy w pasku wyszukiwania wprowadzi\u0107 adres strony internetowej (np. www.google.com). Gdy wy\u015bwietli si\u0119 strona najpopularniejszej wyszukiwarki to wprowadzimy w pole wyszukiwania interesuj\u0105c\u0105 Nas fraz\u0119 i wybierzemy przycisk Enter. Nast\u0119pnie otworzymy pierwszy wynik z listy wyszukiwania i zweryfikujemy czy tytu\u0142 strony jest zgodny z oczekiwanym.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Ustawienie \u015brodowiska<\/h2>\n\n\n\n<p>Zanim jednak przejdziemy do tworzenia naszego testu musimy upewni\u0107 si\u0119, \u017ce Nasz komputer jest odpowiednio skonfigurowany. W kolejnym wpisie otrzymasz instrukcj\u0119 jak przygotowa\u0107 sw\u00f3j komputer do pisania test\u00f3w automatycznych. Dowiesz si\u0119 jak:<br>&#8211; zainstalowa\u0107 Jav\u0119 i ustawi\u0107 zmienne \u015brodowiskowe<br>&#8211; zainstalowa\u0107 IDE<br>Na tym etapie wyst\u0119puje du\u017co problem\u00f3w zwi\u0105zanych z r\u00f3\u017cnicami w konfiguracji na r\u00f3\u017cnych systemach operacyjnych, dlatego wiele os\u00f3b rezygnuje w tym miejscu. \u017beby nie podzieli\u0107 ich losu, przygotuj\u0119 dla Ciebie instrukcj\u0119 konfiguracji \u015brodowiska dla r\u00f3\u017cnych system\u00f3w operacyjnych.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">TestNG &#8211; biblioteka do pisania test\u00f3w<\/h2>\n\n\n\n<p style=\"text-align:left\">Po przygotowaniu \u015brodowiska zapoznamy si\u0119 z TestNG, czyli bibliotek\u0105 do tworzenia test\u00f3w w Javie. Nie musz\u0105 to by\u0107 tylko i wy\u0142\u0105cznie testy na poziomie UI, ale my skupimy si\u0119 w\u0142a\u015bnie na Nich. W tej sekcji dowiesz si\u0119:<br>&#8211; czym jest TestNG i jakie s\u0105 jego zalety&nbsp;<br>&#8211; jak oznaczy\u0107 metod\u0119 jako testow\u0105<br>&#8211; jak wykona\u0107 jaki\u015b kawa\u0142ek kodu przed i po te\u015bcie<br>&#8211; jak sprawdza\u0107 rezultaty <\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Selenium &#8211; otwieranie przegl\u0105darki<\/h2>\n\n\n\n<p> Po zainstalowaniu i zapoznaniu si\u0119 z narz\u0119dziami b\u0119dziemy w stanie przej\u015b\u0107 do naszego testu. Testy b\u0119dziemy tworzy\u0107 przy u\u017cyciu biblioteki Selenium. Tym razem zajmiemy si\u0119 otwieraniem przegl\u0105darki i pobieraniem konkretnej strony. Poka\u017c\u0119 Ci jak otworzy\u0107 okno wybranej przegl\u0105darki i co musimy zrobi\u0107, aby otworzy\u0107 wybran\u0105 stron\u0119.<br>Porozmawiamy r\u00f3wnie\u017c o driverach i kompatybilno\u015bci drivera z przegl\u0105dark\u0105. <\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Selenium &#8211; lokalizowanie element\u00f3w na stronie<\/h2>\n\n\n\n<p>Kolejny etap tworzenia testu to pr\u00f3ba odnalezienia elementu na stronie, aby m\u00f3c wykona\u0107 na Nim jak\u0105\u015b akcj\u0119. Selenium dostarcza nam szereg sposob\u00f3w lokalizowania element\u00f3w na stronie i w tej wiadomo\u015bci podziel\u0119 si\u0119 z Tob\u0105 wiedz\u0105 odno\u015bnie technik lokalizowania element\u00f3w na stronie. Powiem r\u00f3wnie\u017c, kt\u00f3re z nich s\u0105 najlepsze i dlaczego.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Selenium &#8211; wykonywanie akcji na elementach<\/h2>\n\n\n\n<p>Ostatnim etapem po zlokalizowaniu element\u00f3w na stronie jest pr\u00f3ba wykonania akcji na tych elementach. Po zlokalizowaniu elementu b\u0119dziemy w stanie wykona\u0107 na nim jak\u0105\u015b akcj\u0119 np. wpisywanie warto\u015bci w pole tekstowe, albo b\u0119dziemy mogli pobra\u0107 informacje odno\u015bnie stanu takiego elementu tzn. czy jaki\u015b element jest widoczny, czy zawiera jaki\u015b tekst, czy jest mo\u017cliwa interakcja z takim elementem. W ramach tej lekcji dodamy r\u00f3wnie\u017c asercj\u0119 do naszego testu, kt\u00f3ra pozwoli sprawdzi\u0107 czy zachowanie aplikacji jest zgodne z oczekiwanyym.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Selenium &#8211; Page Object Model<\/h2>\n\n\n\n<p>W tym miejscu Nasz test powinien ju\u017c dzia\u0142a\u0107 :). W ramach tej sekcji uporz\u0105dkujemy kod w taki spos\u00f3b, aby dodawa\u0107 kolejne testy szybciej i zaprzesta\u0107 duplikowania kodu. Po przej\u015bciu tego kroku, zachowanie testu nie zmieni si\u0119. To co ulegnie zmianie to struktura Naszego projektu i spos\u00f3b w jaki&nbsp; jest w nim &#8222;u\u0142o\u017cony&#8221; kod. W ramach tej sekcji dowiesz si\u0119:<br>&#8211; czym s\u0105 wzorce projektowe&nbsp;<br>&#8211; czym jest Page Object Pattern<br>&#8211; co robi PageFactory <\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Podsumowanie<\/h2>\n\n\n\n<p style=\"text-align:left\">Mam nadziej\u0119, \u017ce ta seria pozwoli Ci napisa\u0107 sw\u00f3j pierwszy test automatyczny i przekona\u0107 si\u0119 \u017ce to \u015bwietna zabawa. W przypadku problem\u00f3w mo\u017cesz liczy\u0107 na moje pe\u0142ne wsparcie podczas ca\u0142ego procesu.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Chcia\u0142bym pom\u00f3c Ci stworzy\u0107 sw\u00f3j pierwszy test automatyczny na poziomie interfejsu u\u017cytkownika. Co b\u0119dzie robi\u0142 Nasz test? B\u0119dzie klika\u0142 po aplikacji internetowej tak jak prawdziwy u\u017cytkownik i weryfikowa\u0142 czy wykonane akcje powoduj\u0105 konkretne zachowanie aplikacji. Jak b\u0119dzie wygl\u0105da\u0142 test? Test b\u0119dzie polega\u0142 na tym, \u017ce otworzymy przegl\u0105dark\u0119 internetow\u0105. Nast\u0119pnie spr\u00f3bujemy [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":721,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-720","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-uncategorized"],"_links":{"self":[{"href":"https:\/\/testeroprogramowania.pl\/index.php\/wp-json\/wp\/v2\/posts\/720","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/testeroprogramowania.pl\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/testeroprogramowania.pl\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/testeroprogramowania.pl\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/testeroprogramowania.pl\/index.php\/wp-json\/wp\/v2\/comments?post=720"}],"version-history":[{"count":2,"href":"https:\/\/testeroprogramowania.pl\/index.php\/wp-json\/wp\/v2\/posts\/720\/revisions"}],"predecessor-version":[{"id":747,"href":"https:\/\/testeroprogramowania.pl\/index.php\/wp-json\/wp\/v2\/posts\/720\/revisions\/747"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/testeroprogramowania.pl\/index.php\/wp-json\/wp\/v2\/media\/721"}],"wp:attachment":[{"href":"https:\/\/testeroprogramowania.pl\/index.php\/wp-json\/wp\/v2\/media?parent=720"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/testeroprogramowania.pl\/index.php\/wp-json\/wp\/v2\/categories?post=720"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/testeroprogramowania.pl\/index.php\/wp-json\/wp\/v2\/tags?post=720"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}