Mentionsy

Better Software Design
02.04.2024 23:00

84. O implementacji testów backendu i architekturze otwartej na testowanie

Jeśli wycena projektu podawana jest w dwóch wersjach, z uwzględnieniem testów i bez, to z software craftsmanshipem ma to niewiele wspólnego. To tak, jakby pytać chirurga, czy może przyspieszyć operację nie dezynfekując skalpela. Jakość nie powinna być elementem przetargowym. Chyba, że pracujemy nad proof-of-concept, ale tego rodzaju projekty często lubią płynnie przejść w fazę protoduction...

Jeśli szukasz sprawdzonych w boju receptur na implementację jakościowych testów, które nie będą wymagały co chwilę refaktoryzacji i modyfikacji przy zmianie kodu projektu, zapraszam Cię na dzisiejszą rozmowę z Piotrem Stawirejem. Napisać test w projekcie to w zasadzie żadna sztuka. Ale napisać test, który dostarczy realną wartość biznesową, będzie łatwy do utrzymania, a przy okazji może zostać wykorzystany na różnych poziomach piramidy testów, to trochę bardziej skomplikowane zadanie.

I pewnie niektóre strategie mogą być trochę kontrowersyjne, jak na przykład rezygnacja z typowego mockowania zależności, czy silnego podziału na wiele różnych testów w projekcie. Ale skoro działa to w praktyce, to w czym rzecz?

W tym odcinku rozmawiamy wraz z Piotrem między innymi o:

organizacyjnych i technicznych problemach z implementacją jakościowych testów w backendziemetryce code-coverage i jej różnym stopniu przydatności w projekcieprofesjonalnym podejściu do problemu "z testami, czy bez?"dobrych praktykach doboru strategii testowaniaszarej strefie testów Kevlina Henney'alegacy, testach charakterystyki, szwach i odcinaniu fragmentów systemu dla testówunitach, czyli fragmentach kodu o pojedynczej odpowiedzialności, mierzonego kohezjąimplementacji architektury otwartej na testowanieeliminacji problemów z nadużywaniem mocków w projekcie

Zapraszam!

Materiały dodatkowe:

Sub-second acceptance tests, prezentacja Aslaka Hellesøy z konferencji SeleniumConf ChicagoGrowing Object-Oriented Software, Guided by Tests, wspomniana w rozmowie książka Steve'a Freemana i Nata Pryce'aStyle Guide for Object Design, książka Matthiasa NobackaFinancial System, repozytorium z przykładowym kodem Piotra

Wszystkie test zazieleniły. A spoko, czyli mamy taką skuteczność na produkcji, funkcjonalności, że trzeba spróbować 5-10 razy, wtedy zadziała. I tak powiemy klientowi też, nie? Musisz spróbować 10 razy. W przeszłości zauważałem taką tendencję, że programiści i programistki pytali się dobrze, ale mamy to zaimplementować z testami czy bez. Ale to jest takie, jak pytać by się chirurga, czy ja mam zdezynfekować narzędzia chirurgiczne przed operacją czy nie. Kto tutaj jest profesjonalistą? ...

Search in Episode Content

Enter a search term to find specific content in this episode's transcription