Wydawca: 8
Testowanie aplikacji Java za pomocą JUnit
Radosław Sokół
Testuj swój kod profesjonalnie — pisz testy jednostkowe! Poznaj niezbędne narzędzia Twórz testy jednostkowe Korzystaj z technik TDD i TAD Jednym z największych wyzwań współczesnej inżynierii oprogramowania jest zapewnienie właściwej jakości tworzonych produktów, którą można osiągnąć w dużej mierze dzięki odpowiedniej weryfikacji kodu. Odpowiedzią na potrzeby branży są testy automatyczne, a wśród najważniejsze to z pewnością testy jednostkowe. Nie tylko umożliwiają one ciągłe, bezproblemowe i szybkie sprawdzanie poprawności pisanego kodu, lecz również pozwalają wyeliminować regresję i poprawić jakość architektury tworzonych rozwiązań, a także stanowią dla nich doskonałą dokumentację. Jeśli nie chcesz zostać w tyle, również Ty powinieneś zacząć pisać testy jednostkowe do swoich programów tworzonych w języku Java. Pomoże Ci w tym książka prezentująca koncepcję UT, bibliotekę JUnit, rozszerzenie AssertJ oraz biblioteki EqualsVerifier, Mockito i Google Guava. Poznasz dzięki niej sposoby pisania testów, refaktoryzowania kodu oraz imitowania działania funkcji i bazy danych. Dowiesz się też, jak w praktyce stosować metodyki TDD i TAD. A wszystkiego nauczysz się dzięki wziętym z życia przykładom oraz zadaniom do samodzielnego wykonania. Tworzenie testów jednostkowych za pomocą biblioteki JUnit Ścieżki kodu, pokrycie testami i refaktoryzacja kodu Unikanie zależności za pomocą imitacji i zastosowanie Mockito Płynne definiowanie testów za pomocą biblioteki AssertJ Programowanie ukierunkowane na testy i wspomagane testami Imitowanie baz danych przy użyciu rozwiązania Apache Derby Popraw jakość swoich programów, korzystając z testów jednostkowych!
Testowanie aplikacji w React.js. Kurs video. Praca z biblioteką Jest.js
Krzysztof Komar
Obierz kurs na... automatyczne testowanie aplikacji w React.js Rozwój internetu oraz fakt, że większość komputerów i telefonów ma z nim stałe połączenie, sprawił, że wiele aplikacji jest tworzonych wyłącznie z myślą o uruchamianiu ich w przeglądarce, także mobilnej. Przykładów nie trzeba daleko szukać ? Facebook i sprzężony z nim komunikator Messenger, Instagram albo Netflix. Jeśli chodzi o technologię, wszystkie je łączy coś bardzo istotnego: biblioteka React.js, której użyto do zbudowania każdej z tych aplikacji. Im większa i bardziej złożona aplikacja, tym trudniejsze jest jej utrzymanie. Oznacza to między innymi, że coraz ciężej jest dbać o to, by nowo dodawane funkcje nie psuły niczego w dotychczasowym, działającym kodzie. By zapobiec awariom związanym z wprowadzaniem do aplikacji usprawnień i unowocześnień, można - i należy - ją przy tej okazji testować. Wiele aplikacji testuje się manualnie, za pomocą opisanych scenariuszy testowych. Nie jest to złe rozwiązanie, ale obarczone pewnymi ograniczeniami. Rozrost aplikacji oznacza konieczność zatrudniania kolejnych testerów. Dodatkowo im większa aplikacja, tym dłuższy proces manualnego testowania. Jest to więc przedsięwzięcie nieopłacalne. Na szczęście testowanie aplikacji może zacząć już programista, co sprawia, że na kolejnych etapach nie potrzeba tylu testerów. Umożliwia to Jest.js, biblioteka opracowana z myślą o łatwym testowaniu aplikacji napisanych w React.js. Jest.js bardzo dobrze integruje się z Reactem, a dodatkowo udostępnia wiele przydatnych w nim rozwiązań (takich jak snapshoty). Pisanie testów z wykorzystaniem tej biblioteki jest bardzo wygodne i może stanowić naturalny kierunek dalszego ulepszania aplikacji. Co Cię czeka podczas naszego profesjonalnego szkolenia? Podczas tego kursu video: Zapoznasz się z zagadnieniem testów jednostkowych i integracyjnych. Zaznajomisz się z wadami i zaletami testowania. Dowiesz się, czym jest zjawisko regresji i w jaki sposób testy mogą mu zapobiec. Poznasz różne rodzaje testów - jak je uruchamiać i przechowywać w repozytorium. Opanujesz najpopularniejsze funkcje Jest Matchers. Co więcej... Nauczysz się instalowania i konfigurowania biblioteki Jest.js oraz tworzenia testów za jej pomocą. Po ukończeniu szkolenia Testowanie aplikacji w React.js. Kurs video. Praca z biblioteką Jest.js będziesz dysponować wiedzą i umiejętnościami na poziomie średnio zaawansowanym. Trzy godziny z testowaniem Tyle mniej więcej czasu musisz poświęcić na to, by z naszym kursem zgłębić temat testowania aplikacji w React.js z użyciem biblioteki Jest.js. Zaczniemy oczywiście od podstaw, czyli od ogólnego omówienia koncepcji testowania. Przyswoimy niezbędną teorię - poznamy między innymi koncepcję regresji. Następnie zainstalujemy bibliotekę Jest.js, stworzymy pierwsze pliki z testami i uruchomimy napisane testy. Przyjrzymy się strukturze testów - blokom describe() oraz it() - i zaczniemy generować testy asynchroniczne. Poznamy działanie funkcji setUp() oraz tearDown(), będziemy tworzyć mocki funkcji i modułów oraz testować komponenty za pomocą snapshotów. Snapshoty stworzymy, wykorzystując do tego react-test-renderer oraz Enzyme Shallow - ten ostatni przyda nam się także do tworzenia testów integracyjnych. Na koniec będziemy testować komponenty bezstanowe oraz te ze stanem i omówimy funkcje Matchers: toBe, toEqual, toBeCloseTo, toContain, toHaveLength. Testowanie dowodzi obecności błędów, a nie ich braku. Edsger Dijkstra
Testowanie automatyczne w .NET. Kurs video. Zastosowania frameworka nUnit
Mateusz Boguszewski
Obierz kurs na... karierę profesjonalnego testera oprogramowania Rynek pracy w IT zmienia się dynamicznie, w tempie odpowiadającym rozwojowi stosowanej w informatyce technologii. Ponieważ rośnie zakres wiedzy, liczba języków programowania, środowisk programistycznych i rozmaitych rodzajów oprogramowania wspomagającego, mamy obecnie do czynienia ze zjawiskiem specjalizacji. Dziś ze świecą szukać fullstack developerów, czyli osób wykonujących wszystkie zadania w IT. Dziś pracę jednego fullstack developera wykonuje co najmniej trzech ludzi: frontend developer, backend developer i tester oprogramowania. A ponieważ drugim, obok specjalizacji, zjawiskiem na rynku pracy w branży jest poszukiwanie rozwiązań wydajniejszych, a co za tym idzie – szybszych, ten ostatni z teamu, czyli tester, będzie najprawdopodobniej wykonywał swoje zadania w sposób zautomatyzowany. Kurs, który Ci proponujemy, odpowiada na zmieniające się trendy i zapotrzebowanie rynku. Dzięki niemu poznasz najpopularniejsze narzędzie do pracy z technologią .NET, czyli Visual Studio, a także nUnit – framework, w którym często pisane są testy automatyczne. Szkolenie wprowadzi Cię w tematykę testów, a następnie, dzięki zadaniom praktycznym, pozwoli Ci gruntownie poznać zagadnienia związane z testami jednostkowymi, integracyjnymi i E2E. Umiejętności te przydadzą Ci się z pewnością podczas szukania pracy na stanowisku testera. Do niedawna było tak, że testy manualne wykonywali testerzy manualni, a automatyczne pisali programiści. Aktualnie jednak coraz częściej poszukuje się testerów będących w stanie przeprowadzić samodzielnie oba rodzaje testów. Co Cię czeka podczas naszego profesjonalnego szkolenia W czasie kursu nauczysz się: określać warunki brzegowe testu tworzyć tablicę decyzyjną przygotowywać przypadki testowe pisać testy jednostkowe we frameworku nUnit pisać testy integracyjne we frameworku nUnit pisać testy interfejsu użytkownika aplikacji webowych we frameworku nUnit z wykorzystaniem Selenium pisać testy interfejsu użytkownika aplikacji desktopowych we frameworku nUnit z wykorzystaniem Appium Szkolenie Testowanie automatyczne w .NET. Kurs video. Zastosowania frameworka nUnit zakończysz na poziomie średnio zaawansowanym. Obszerne teoretyczne wprowadzenie, a także liczne zadania, które wykonasz w trakcie kursu, dostarczą Ci wiedzy wystarczającej do rozpoczęcia pracy na stanowisku testera automatyzującego. Co więcej, zdobyte w ramach szkolenia umiejętności będą stanowić bazę do dalszego rozwoju w tym obszarze informatyki. „Automatyzacja to zastępowanie tego, co działa, czymś, co prawie działa, ale jest szybsze i tańsze” – to zdanie przypomina o dwóch podstawowych warunkach, które wskazują na zasadność automatyzacji testów: wykonanie automatycznych testów powinno być szybsze niż manualna weryfikacja zachowania systemu.
Testowanie bezpieczeństwa aplikacji internetowych. Receptury
Paco Hope, Ben Walther
Poznaj i wykorzystaj mechanizmy testowania zabezpieczeń, a nikt nie prześlizgnie się przez Twoją witrynę! Jak zainstalować i skonfigurować narzędzia do testowania zabezpieczeń? Jak szybko i sprawnie znaleźć problemy w aplikacjach? Jak wykorzystywać testy powtarzalne? Witryny internetowe oraz ich aplikacje stanowią swoistą wirtualną furtkę do wszystkich korporacji i instytucji. Jak zatem zadbać, aby nikt niepożądany nie przedostał się do środka? Co sprawia, że witryna jest naprawdę bezpieczna? I w jaki sposób testować aplikację, aby nie był to proces żmudny i czasochłonny, a raczej sprawny i skuteczny? Oto rozwiązanie -- niniejsza książka zawiera proste receptury, dzięki którym z łatwością znajdziesz luki w aplikacjach, zanim zrobią to różni hakerzy. Książka "Testowanie bezpieczeństwa aplikacji internetowych. Receptury" to napisany zrozumiałym językiem podręcznik, dzięki któremu szybko poznasz mechanizmy testowania zabezpieczeń. Praktyczne przykłady zawarte w tym przewodniku sprawią, że szybko nauczysz się włączać systemy zabezpieczeń do standardowych procedur kontroli aplikacji. Bez problemu stworzysz testy dotyczące funkcji AJAX, a także przeprowadzisz rozbudowane, wieloetapowe testy podatności na klasyczne problemy: skrypty krzyżowe oraz wstrzykiwanie kodu. Bezpieczeństwo oprogramowania Instalacja darmowych narzędzi i rozszerzeń Kodowanie danych w Internecie Manipulowanie danymi wejściowymi Fałszowanie informacji przesyłanych w nagłówkach przez przeglądarki Przesyłanie na serwer plików o dużej objętości Obchodzenie ograniczeń interfejsu użytkownika Autoryzacja masowego skanowania Ataki przeciwko aplikacjom AJAX Manipulowanie sesjami Testy wielostronne Niech bezpieczeństwo Twoich aplikacji nie spędza Ci snu z powiek!
Testowanie full stack. Praktyczny przewodnik dostarczania oprogramowania wysokiej jakości
Gayathri Mohan
Wysoka jakość aplikacji nie bierze się znikąd! Aby ją zapewnić, testowanie musi być integralnym aspektem inżynierii oprogramowania, wplecionym w każdy etap cyklu jego dostarczania. Błędy czy niedoskonałości w kodzie, pominięte z powodu niedokładnego testowania, mogą się okazać niezwykle kosztowne, jeśli ujawnią się w środowisku produkcyjnym. Oznacza to, że wdrożenie mądrej strategii testowania jest warunkiem sukcesu w branży dostarczania oprogramowania. Ten praktyczny przewodnik zawiera szeroki przegląd strategii, wzorców i form testowania oprogramowania, ułatwiających dobór ścieżek i podejść do konkretnych projektów w zależności od zakresu, budżetu i ram czasowych. Książka uczy przydatnych umiejętności w zakresie przeprowadzania testów wydajności, bezpieczeństwa i dostępności, w tym testów eksploracyjnych, automatyzacji testów, testów wielofunkcyjnych, testowania danych, testowania mobilnego i wielu innych. Zaprezentowano tu także łączenie testów w potokach ciągłej integracji, co pozwala na szybkie otrzymywanie informacji zwrotnych. W ten sposób łatwiejsze staje się kontrolowanie trudnych przepływów pracy programistycznej i uzyskiwanie wysokiej jakości aplikacji. Najciekawsze zagadnienia: ponad 40 narzędzi do testowania kodu zasady dobierania testów pod kątem jakości oprogramowania strategie i koncepcje dotyczące testowania praktyczne korzystanie z poszczególnych narzędzi do testowania najlepsze praktyki przeprowadzania testów Po pierwsze, po drugie i po trzecie: testuj swój kod!
Dave Westerveld
Znaczenie interfejsów API systematycznie rośnie. Głównie za sprawą tego, że ułatwiają komunikację - zarówno zewnętrzną, jak i tę, która zapewnia spójne działanie elementów nowoczesnych systemów. I podobnie jak dobre porozumienie jest podstawą relacji międzyludzkich, tak samo sprawna komunikacja między usługami ma kluczowe znaczenie dla prawidłowego funkcjonowania aplikacji. Z tego powodu od jakości API zależy jakość systemu oprogramowania jako całości. Warto zatem dobrze poznać Postmana. Dzięki tej praktycznej książce poznasz pełnię możliwości Postmana. Znajdziesz tu przystępnie wyjaśnione koncepcje, a także zestaw rzeczywistych przykładów, co ułatwi Ci korzystanie z tego narzędzia do tworzenia doskonale zaprojektowanych, udokumentowanych i przetestowanych interfejsów programowania aplikacji. Za pomocą praktycznych projektów nauczysz się dodawać automatyzację testów do istniejącego API. Poznasz również nowe funkcjonalności Postmana, stanowiące dużą pomoc w unikaniu błędów. W drugim, w pełni zaktualizowanym wydaniu znajdziesz nowe rozdziały dotyczące testowania przepływu pracy, tworzenia i używania serwerów imitacji, testowania bezpieczeństwa API, jak również testowania wydajności. W książce: użycie Postmana do poprawy jakości interfejsu API Postman i testowanie sterowane danymi serwery mock w Postmanie i testowanie kontraktowe zasady testowania bezpieczeństwa funkcjonalne i niefunkcjonalne podejście do testowania API praca ze standardami przemysłowymi, na przykład przy użyciu OpenAI i imitacji API? Lepiej przetestować dziś niż debugować jutro!
Renu Rajani
Doświadczeni deweloperzy wiedzą, że testowanie oprogramowania jest procesem żmudnym i wymagającym, niemniej rzetelnie przeprowadzone testy są konieczne, aby uznać kod za godny zaufania. Co więcej, testowanie kodu jest tą gałęzią techniki, która rozwija się bardzo dynamicznie. Ma to związek z rosnącymi konsekwencjami ewentualnych incydentów, przerw w działaniu oprogramowania czy wręcz ataków hakerskich. Oznacza to, że tester musi być na bieżąco z nowinkami ze swojej branży. Ta książka jest nieodzowną pomocą każdego testera. Stanowi wyczerpujące źródło potrzebnych informacji, prezentuje przeróżne perspektywy, praktyki, trendy, narzędzia i rozwiązania związane z testowaniem aplikacji. Omówiono różne modele działań testowych i rozmaite cykle życia oprogramowania. Pokazano nieoczywiste aspekty analizy jakości oraz prowadzenia testów w przypadku mediów społecznościowych, urządzeń mobilnych, danych analitycznych i technologii chmury. Opisano technologie, które najprawdopodobniej będą kształtować przyszłość testów oprogramowania. W publikacji nie zabrakło informacji o najlepszych praktykach, które warto stosować w celu zapewnienia stabilności i bezpieczeństwa oprogramowania. W tej książce między innymi: Najnowsze trendy w dziedzinie działań testowych i modeli operacyjnych Automatyzacja testów Uczenie maszynowe i systemy kognitywne: testowanie i wykorzystywanie w testach Testowanie na potrzeby różnych branż: ochrona zdrowia, marketing cyfrowy i inne Testowanie aplikacji na potrzeby rozwoju IoT (internetu rzeczy) Podoba Ci się ten kod? Przetestuj, zanim pochwalisz!
Scottie Crump
W ostatnich latach zdecydowanie wzrosła popularność frameworka React, pozwalającego w pełni skorzystać z możliwości nowoczesnych przeglądarek i urządzeń mobilnych. Nowym narzędziem służącym do testowania obiektowego modelu dokumentu (DOM) jest React Testing Library. Zostało ono zaprojektowane tak, aby ułatwiać projektantom pracę zgodną z podejściem test-driven development (TDD). Jest to bardzo cenna właściwość, gdyż prawidłowo napisane komponenty testowe znacznie obniżają ryzyko wystąpienia poważnych błędów aplikacji. W tej książce przystępnie wyjaśniono, w jaki sposób używać nowoczesnego narzędzia, jakim jest React Testing Library (RTL), do testowania komponentów napisanych w React. Dzięki niej zrozumiesz główne aspekty działania tej biblioteki. Nauczysz się symulować interakcje użytkownika i zrozumiesz podejście TDD. Znajdziesz tu wskazówki, jak tworzyć testy jednostkowe komponentów, które wchodzą w interakcje z interfejsami API, a także jak testować komponenty za pomocą takich bibliotek jak GraphQL i Redux. Zapoznasz się też z technikami testowania aplikacji, które podległy poważnej refaktoryzacji. Na koniec dowiesz się, jak pisać całościowe testy funkcjonalne z wykorzystaniem biblioteki Cypress i które wzorce projektowe są najbardziej przydatne do ustrukturyzowania profesjonalnego zbioru testów. W książce między innymi: wprowadzenie do RTL i jego zastosowań użycie jest-dom do rozbudowy testów opartych na RTL techniki tworzenia komponentów testowych łatwych do modyfikacji integracja zestawów testowych z Cucumber i Cypress podejście TDD React: z łatwością napiszesz doskonałe komponenty testowe!