OWASP Dependency Check to plugin do Gradle’a pozwalający zautomatyzować sprawdzanie wykorzystywanych bibliotek pod kątem luk bezpieczeństwa i dobra darmowa alternatywa dla Snyka.
Czytaj dalej „OWASP Dependency Check”ExpectedException i pułapki łapania wyjątków w testach
Pisząc testy we frameworku JUnit 4 mamy kilka opcji na zapisanie warunku, że testowany kod powinien rzucić wyjątkiem. Wymieniając najprostsze, niewymagające dodatkowych bibliotek:
- dodanie atrybutu „expected” do adnotacji na metodzie testowej:
@Test(expected = IllegalStateException.class)
- otoczenie kodu blokiem try-catch
- użycie reguły ExpectedException
Pierwsza opcja wymaga najmniej pisania, ale jest mało elastyczna: nie jesteśmy w stanie zapewnić niczego o wyjątku, jedynie jego klasę. Gdyby przyszła potrzeba upewnienia się, jaki jest komunikat wyjątku, metodę testową trzeba całkowicie przepisać, zmieniając podejście na któreś z opisanych niżej.
Czytaj dalej „ExpectedException i pułapki łapania wyjątków w testach”Szybkie prototypowanie backendu z json-serverem
Są sytuacje, gdy piszemy front-end zanim będzie dostępny back-end, lub chcemy postawić lokalną „fałszywą” instancję REST-owego back-endu zwracającą odpowiedzi, nad którymi mamy pełną kontrolę, bez przebijania się przez skomplikowaną logikę przetwarzania prawdziwych danych. Szybką i wygodną opcją jest skorzystanie z pakietu json-server uruchamianego w Node.js i serwowanie danych z pliku.
Czytaj dalej „Szybkie prototypowanie backendu z json-serverem”Instalacja Kubuntu 18.10 na HP Pavilion Power
Miałem ostatnio naprawdę ciężkie przejścia z wgrywaniem Linuksa na nowym laptopie. Instalowałem wcześniej różne systemy tekstowo i graficznie, problemów ze sprzętem albo aktualizacjami w zainstalowanym „pingwinie” nie miałem od tak dawna, że uwierzyłem, że ten system okrzepł i dojrzał. Jak się okazało — dalej można źle trafić, na przykład tak, że żeby rozwiązać jeden problem, trzeba najpierw rozwiązać zupełnie inny.
Moim wyzwaniem był laptop HP Pavilion Power 15-bc402nw (kod producenta 5GV06EA) — sprzęt na tyle rzadki, że nie mogłem znaleźć jego zdjęć poza katalogowymi producenta (pełno jest zdjęć różnych pokrewnych modeli), ale z drugiej strony posiadający bardzo popularne komponenty. Na przykład kartę graficzną Nvidia GeForce GTX 1050, która jak się okazało była magnesem dla problemów i zmusiła mnie do zapoznania się z parametrem „nomodeset” jądra Linuksa.
Czytaj dalej „Instalacja Kubuntu 18.10 na HP Pavilion Power”Konferencja Heisenbug Moscow 2018
Konferencja w Rosji – powtórzcie to sobie w myślach i zastanówcie się, jakie skojarzenia pojawiają się w waszych głowach. Czy u nich są w ogóle jakieś konferencje? Nawet jeśli są, to po co człowiek miałby kusić los i pójść na jedną z nich? Tak się składa, że w grudniu pojechałem na Heisenbug do Moskwy – i wróciłem zadowolony. Więcej, konferencja była tak sprawnie zorganizowana i dobrze przemyślana, że moim zdaniem organizatorzy polskich wydarzeń mają się czego uczyć.
Migracje w źródłach projektu z użyciem Gradle’a
Gdy rozwijamy nasze projekty, z czasem powstają różne śmieci i zaszłości. W samym kodzie radzimy sobie z bałaganem robiąc od czasu do czasu refaktoring. W bazie danych robimy migracje. Co ze źródłami na naszym dysku?
Czytaj dalej „Migracje w źródłach projektu z użyciem Gradle’a”