Postman z Newman & Jenkins

W Serii Postman Tutorial dowiedzieliśmy się o Postman & Newman i ich funkcjach. Aby opanować całkowicie w Postman potrzebujemy tylko jednego elementu, aby ukończyć ten kurs. Ten element to Jenkins. Tak więc w tym tutorialu będziemy rozmawiać o listonosz z Newman & Jenkins. Zasadniczo listonosz nie jest dziś tylko oprogramowaniem. Listonosz to nie Listonosz, ale paczka listonosza, Newmana i Jenkinsa. Ten pakiet pomaga ukończyć krąg zautomatyzowanych testów i dostarczyć dobrej jakości oprogramowanie. Ponieważ omówiliśmy dwa pierwsze elementy, skupimy się na Jenkinsie w następnych kilku samouczkach, abyśmy zrozumieli zalety Postmana z Newmanem & Jenkinsem. Zacznijmy od zapoznania się z nim.jenkins_Main_Logo

co to jest Jenkins?

Jenkins jest serwerem automatyzacji open source napisanym w Javie. Jenkins jest używany do ciągłego budowania i testowania projektu, co ułatwia pracę programiście i testerowi oprogramowania. Aby uzyskać to w znanych nam słowach, Jenkins używa ciągłej integracji i ciągłego rozwoju do rozwoju i wdrażania oprogramowania, a wszystko to sprawia, że praca programisty jest łatwa. Dzięki Jenkins organizacje mogą przyspieszyć proces tworzenia oprogramowania poprzez automatyzację. Jenkins integruje procesy cyklu życia programistycznego wszelkiego rodzaju, w tym budowanie, dokumentowanie, testowanie, pakowanie, etapowanie, wdrażanie, analizę statyczną i wiele innych.

pamiętaj w ostatnim tutorialu, który badaliśmy o ciągłej integracji, co w skrócie oznacza, że za każdym razem, gdy kod jest przesyłany do repozytorium, niektóre przypadki testów są automatycznie wykonywane na kodzie. Pomaga to programistom sprawdzić kompilację, czy jest poprawna, czy nie. Jeśli nie wykonamy ciągłej integracji „ciągłej”, ale czasami możemy nie dostać się, w której kompilacji nie powiodło się i z powodu którego problemu. Jenkins robi to samo, pomaga programistom i testerom poprzez ciągłą integrację i ciągłe sprawdzanie jakości kompilacji. Ale nie dowiedzieliśmy się o drugim pojęciu (ciągła dostawa), którego użyliśmy powyżej. Zróbmy to teraz.

co to jest dostawa ciągła?

ciągłe dostarczanie opiera się na ciągłej integracji, co oznacza, że ciągłe dostarczanie (CD) nie jest możliwe, jeśli ciągła Integracja (CI) nie jest na miejscu. Ciągłe dostarczanie jest kolejnym krokiem ciągłej integracji. Continuous delivery to praktyka tworzenia oprogramowania DevOps, w której zmiany kodu są automatycznie budowane, testowane (testy jednostkowe) i przygotowywane do wydania w środowisku. To środowisko może być wszystko, od inscenizacji, przedprodukcji lub produkcji. W pewnym sensie rozszerza on ciągłą integrację, wdrażając wszystkie zmiany kodu w środowisku testowym i/lub produkcyjnym po etapie budowania.

ciągłe dostarczanie pozwala programistom zautomatyzować testowanie poza testami jednostkowymi, aby mogli zweryfikować aktualizacje aplikacji w wielu wymiarach przed wdrożeniem do klientów. Testy te mogą obejmować testy interfejsu użytkownika, testy wydajności, testy integracji, testy API. Jak wiesz, że interfejs użytkownika lub inne testy wymagają środowiska do uruchomienia, stąd ciągłe dostarczanie faktycznie wdraża aplikację w określonym środowisku i gdzie inne testy, takie jak interfejs API &, zostaną wykonane. Pomaga to programistom dokładniej sprawdzać aktualizacje i zapobiegawczo wykrywać problemy.

dlatego programiści są powiadamiani o tym samym i ręcznie wpychają go do środowiska produkcyjnego, z którego oprogramowanie jest wydawane klientom / klientom. Ciągłe dostarczanie automatyzuje cały proces wydawania oprogramowania. Każda zatwierdzona wersja uruchamia automatyczny przepływ, który kompiluje, testuje, a następnie etapuje aktualizację. Ostateczną decyzję o wdrożeniu do środowiska produkcyjnego na żywo podejmuje deweloper.

co to jest ciągłe wdrażanie?

różnica między ciągłą dostawą a ciągłym wdrażaniem polega na ręcznym zatwierdzeniu aktualizacji do produkcji. Przy wdrożeniu ciągłym wdrożenie produkcyjne odbywa się automatycznie bez wyraźnej zgody. Oznacza to, że w przypadku ciągłego wdrażania, ostatni krok jest również zautomatyzowany, a kod jest wypychany automatycznie bez żadnej interwencji programisty.

możemy również powiedzieć, że jest to krok naprzód od ciągłej dostawy, ponieważ jest w pełni zautomatyzowany. Ponieważ jest w pełni zautomatyzowany, łatwiej byłoby odgadnąć, że wymaga bardzo starannego procesu środowiskowego i tylko kilka firm będzie go stosować. Te ostrożne środki ostrożności obejmują posiadanie wysoce rozwiniętej kultury monitorowania i zdolność do szybkiego powrotu do zdrowia.

continuous-delivery-vs-continuous-deployment

Tak więc Jenkins jest oprogramowaniem, które automatyzuje testy i zapewnia ciągłą integrację oraz ciągłe dostarczanie/ciągłe wdrażanie. Kontynuując to samo, Jenkins daje nam kolejne korzyści.

zalety Jenkinsa

Jenkins osiąga ciągłą integrację za pomocą wtyczek i dostępnych jest dosłownie tysiące wtyczek dla Jenkinsa. Do każdej pracy można znaleźć wtyczkę do Jenkinsa, a jeśli nie, można ją utworzyć. Wtyczka umożliwia integrację różnych etapów DevOps. Jeśli chcesz zintegrować konkretne narzędzie, musisz zainstalować wtyczkę dla tego narzędzia. Na przykład: Git, Maven 2 project, Amazon EC2, HTML publisher itp. Oprócz wtyczek istnieją następujące zalety Jenkins

  • jest to narzędzie open source z wielkim wsparciem społeczności
  • jest łatwe w instalacji.
  • jest bezpłatny.
  • jest zbudowany z Javy i dlatego jest przenośny na wszystkie główne platformy.

te zalety mają ogromne znaczenie dla każdego programisty lub testera. A jeśli coś, czego nie dostałeś, podsumowaliśmy to w następnej sekcji.

listonosz z Newmanem & Jenkins

Jenkins jest dziś używany w tempie, którego programista nigdy sobie nie wyobrażał. Wkrótce stanie się on motorem dla DevOps. Nie ma wątpliwości, że głównym źródłem zasilania Jenkinsa są wtyczki. Nie ma innego konkretnego czynnika, który mógłby użyć Jenkinsa z listonoszem. Istnieje wiele alternatyw, które mogą być używane z listonoszem, ale Jenkins jest preferowany i zalecany (również na oficjalnej stronie listonosza). Że tak powiem, będziemy używać Jenkinsa tylko dlatego, że ma on większą moc niż inne oprogramowanie i też się rozwija. Zakres wtyczek w Jenkins sprawia, że jest to pierwszy wybór dla każdego. Jeśli chcesz sprawdzić alternatywy, możesz dowiedzieć się o nich poprzez wyszukiwanie siebie. Są to Atlassian Bamboo, CircleCI, JetBrains TeamCity, Thoughtworks Snap, aby wymienić tylko kilka.

jak omówiliśmy w powyższej sekcji , ciągła integracja pomaga nam łączyć różne kody i wykonywać testy w sposób ciągły. Ten amalgamat testów i kodu jest sukcesem dzięki ciągłej integracji, którą w Postman wykonują Newman i Jenkins. Postman Newman jest zbudowany, aby łatwo zintegrować go z systemami kompilacji Jenkins. Dzięki tej funkcji programiści otrzymują szybkie informacje zwrotne na temat wydajności interfejsów API po zmianach kodu. Podobnie jak z Pomocą Newmana, zostanie on zintegrowany z Jenkinsem, a następnie, jeśli jakiekolwiek zmiany zostaną popchnięte, Jenkins uruchomi Kolekcje listonosza z Newmanem.

podsumowanie

Jenkins jest serwerem ciągłej integracji. Krótko mówiąc, Jenkins działa jako pośrednik między kodem kompilacji a repozytorium. Jeśli znajdzie jakiekolwiek zmiany w kodzie, pobiera kod i wysyła je do kodu kompilacji, gdzie wykonywane są automatyczne testy. Jeśli testy wydają się w porządku, jedno ręczne push dostarczy ten sam kod do Klienta w przypadku ciągłej dostawy lub proces ten zostanie zautomatyzowany zgodnie z ciągłym wdrożeniem. Tak szybko, łatwo i niezawodnie. Mam nadzieję, że masz teraz co to jest Jenkins i dlaczego go używamy. W następnym tutorialu zainstalujemy Jenkinsa i uruchomimy kilka kolekcji.