Nowoczesne testowanie kodu w JavaScript. Część Trzecia – Pokrycie kodu testami.

Tym razem napiszę o trochę innym aspekcie testowania, o sprawdzaniu jak wygląda pokrycie testami tworzonego przez programiste kodu. Polega to mniej więcej na obliczaniu przy pomocy odpowiedniego narzędzia, ile razy każda linijka testowanego kodu została wywołana podczas przeprowadzania testów.

Cel mierzenia tego typu danych, może nie być od razu oczywisty, ale uwierzcie mi, jest to bardzo przydatne, szczególnie jeżeli nasza aplikacja coraz bardziej się rozrasta. Dzięki testom pokrycia możemy wykryć nie tylko te fragmenty kodu, które nie zostały przetestowane, ale też na przykład te, które są niepotrzebnie testowane kilka razy.

Pokrycie kodu w JavaScript Es6 Czytaj dalej Nowoczesne testowanie kodu w JavaScript. Część Trzecia – Pokrycie kodu testami.

Nowoczesne testowanie kodu w JavaScript. Część Druga – Podstawowe Testy Jednostkowe

W ostatnim, krótkim wpisie pokazałem jak szybko skonfigurować minimalistyczne środowisko do testowania JavaScriptowego kodu. Przygotowałem tam wszystko co jest potrzebne do pisania podstawowych testów jednostkowych.

Dziś pokażę jak, wykorzystując Moche i Chai, napisać kilka takich podstawowych testów. Zastosuje bardzo modną niegdyś metodologię TDD, czyli Test Driven Development. Już jakiś czas temu pisałem na łamach bloga o tej metodologii, więc dziś nie będę się już rozwodził na ten temat. W skrócie, metodologia ta cechuje się tym, że programy zaczynamy pisać od testów.

Testy jednostkowe JavaScript Czytaj dalej Nowoczesne testowanie kodu w JavaScript. Część Druga – Podstawowe Testy Jednostkowe

Nowoczesne testowanie kodu w JavaScript. Część Pierwsza – Setup

Testowanie kodu jest ważne. Wiem, że moje dotychczasowe projekty nie są może najlepszym przykładem jeśli o to chodzi, ale uwierzcie mi, w pracy zdarza mi się tworzyć, aż nadto (jak na mój gust) testów 🙂 . Jako programiści, często chcemy pominąć ten etap tworzenia oprogramowania, w końcu są testerzy. To Błąd. Pisanie testów to także odpowiedzialność twórcy kodu. Często wydaje się to żmudną, spowalniającą progres pracą ale, tu znów musicie mi uwierzyć na słowo, warto to robić.

Dzisiejszy post to pierwsza część dłuższej serii na temat testowania kodu tworzonego w JavaScripcie. Już wcześniej zdarzyło mi się popełnić kilka wpisów na temat testowania. Tym razem podejdę do tematu trochę ogólniej, będę omawiał testowanie kodu z punktu widzenia developera. Będę poruszał takie kwestie jak testy jednostkowe, testy end-to-end, testy pokrycia oraz wiele innych.

Nowoczesne testowanie kodu w JavaScript Czytaj dalej Nowoczesne testowanie kodu w JavaScript. Część Pierwsza – Setup

Funkcje grubo-strzałkowe czyli fat arrow functions w JavaScript

Mamy rok 2017 i okazuje się, że wiele rozwiązań z ES6, którymi jeszcze niedawno uznawałem za nowości, weszły do codziennego użycia. Blokowy zakres zmiennych, stałe, domyślne parametry, łatwe manipulowanie literałami łańcuchów znaków i wiele innych ficzerów, widzę cały czas w pisanym przez siebie kodzie.

Już nie tylko środowisko node, bez problemu interpretuje najnowsze standardy. Co raz lepsze wsparcie dla ES6 posiadają także przeglądarki. Tam gdzie tego wsparcia nie ma, można skorzystać z wielu narzędzi, które pozwalają obejść tę niedogodność. Suma sumarum, standard ES6 trzeba znać i stosować, bez wymówek. Właśnie dlatego dzisiejszy post poświęcę jednemu z ficzerów es6, fat arrow function, czyli funkcjom o puszystych strzałkach 🙂

javascript arrow functions Czytaj dalej Funkcje grubo-strzałkowe czyli fat arrow functions w JavaScript

TypeScript – pierwsze kroki. Dekoratory metod.

W zeszłym roku przedstawiłem na blogu większość mechanizmów działania TypeScriptu. Do omówienia została mi jeszcze jedna rzecz – Dekoratory. Jest to zdecydowanie bardziej zaawansowany aspekt języka, ale i tak nie powinien być trudny do pojęcia. Nawet jeżeli na początku idea dekoratorów będzie wydawać się skomplikowana, uważam, że warto poświęcić trochę energii na zrozumienie tego zagadnienia.

TypeScript daje możliwość korzystania z kilku rodzajów dekoratorów, ja dziś przedstawię jeden z nich – dekoratory metod. Powinien idealnie sprawdzić się jako wstęp do tematu.

Programowanie TypeScript Dekoratory Metod Czytaj dalej TypeScript – pierwsze kroki. Dekoratory metod.

JavaScript Noob – Podsumowanie kolejnego roku działalności bloga

Poprzedni rok z pewnością był bardzo szczególnym rokiem dla tej strony. 2016 to w końcu pierwszy pełny rok funkcjonowania bloga. W tym poście chciałbym przedstawić krótkie podsumowanie tego okresu. Podzielę się z wami przemyśleniami o tym co według mnie wyszło dobrze a co nie do końca.

Z tych wszystkich rozważań postaram się wyciągnąć luźne wnioski i zaplanować jak będzie wyglądać blog w roku 2017.

JavaScript Noob Podsumowanie Roku Czytaj dalej JavaScript Noob – Podsumowanie kolejnego roku działalności bloga

eduweb.pl – „Kurs NodeJS w Praktyce” – Recenzja

Mamy rok 2017 i nodeJS nie traci na popularności. Mogę nawet zaryzykować stwierdzenie, że jest wręcz przeciwnie. Wprawdzie technologia ta ma zarówno zwolenników jak i przeciwników, to jednak wszyscy muszą się zgodzić, że node zbyt szybko nie prędko zniknie ze świata programowania (webowego i nie tylko). Dlatego warto, szczególnie jeżeli jesteś programistą JavaScript, znać tę technologię.

Skoro już ustaliliśmy, że powinieneś znać Node 🙂 , trzeba pomyśleć o tym z jakiego źródła najlepiej pobrać tę wiedzę. Materiałów jest od groma, zaczynając na filmikach z youtube a na grubaśnych tomiszczach w księgarniach kończąc. Ja jednak dziś przestawię trochę inne źródło wiedzy o Node – wideokursie NodeJS w Praktyce z wydawnictwa eduweb.pl.

eduweb kurs nodeJS recenzja Czytaj dalej eduweb.pl – „Kurs NodeJS w Praktyce” – Recenzja

Sails.js – Tworzenie kontrolera api w sails.js

W architekturze MVC (Model View Controller) kontroler to fragment kodu, który przyjmuje dane i konwertuje je odpowiednio dla widoku lub dla modelu. W wielkim uproszczeniu, można powiedzieć, że to klej łączący dwa pozostałe elementy 🙂 . Kontroler wysyła komunikaty oraz polecenia do modelu i widoku aby zmienić lub zaktualizować ich stan.

W poprzednim wpisie przedstawiłem sposób na połączenie aplikacji sails.js z bazą danych SQL. Już w tym przykładzie program wykorzystywał kontrolery. Jednak ponieważ były to domyślne mechanizmy działające w „bebechach” sailsa, nie było to dla nas widoczne,. Odpowiadały one za zaktualizowanie bazy danych po wysłaniu odpowiedniego requesta. W dzisiejszym poście pokażę jak w sails tworzyć własne kontrolery.

Tworzenie kontrolera api w sails.js Czytaj dalej Sails.js – Tworzenie kontrolera api w sails.js

Vue.js – wprowadzenie. Dodawanie metod do komponentów.

Na blogu opisywałem już jak wzbogacać pisaną aplikację Vue o własne metody. Pisałem już też jak do takiej aplikacji dodawać gotowe komponenty, które można używać wielokrotnie. W tym wpisie połączę te dwa tematy.

Zademonstruję dziś jak wzbogacać tworzone komponenty o własne metody. Takie interaktywne kawałki widoku to bardzo naturalne połączenie. Przy okazji zademonstruję też dodatkowy sposób na definiowanie templatów komponentów.

Vuejs Dodawanie metod komponentów Czytaj dalej Vue.js – wprowadzenie. Dodawanie metod do komponentów.

TypeScript – pierwsze kroki. Dodawanie do projektu zewnętrznych modułów.

W ostatnich postach na temat TypeScript, opisałem jak korzystać z modułów. Nie będę po raz kolejny wymieniał zalet płynących z korzystania z tego mechanizmu podczas tworzenia programów. Powinno to być już dość oczywiste 🙂 .

Jeśli jednak nie jest to jeszcze oczywiste dla wszystkic, to na pewno ten post pomoże to zrozumieć. Dziś zajmę się zagadnieniem dodawania do projektu modułów zewnętrznych.

Programowanie TypeScript zewnętrzne moduły Czytaj dalej TypeScript – pierwsze kroki. Dodawanie do projektu zewnętrznych modułów.