Containers have revolutionized many aspects of software development. In particular - testing.
Testing applications with the same data bases (e.g. Postgres, Redis), queues (e.g. Kafka), etc. that they'll rely on in production grants a substantially higher degree of confidence in the software, than tests with mocks or in-memory fakes of real connectors.
In this presentation I'll show how I use docker-compose for local running and testing of the app being developed. How to adjust the code and set the configuration to make your work faster, ease on-boarding of new team members, and, above all, to increase the quality. The presented techniques emerged from working on a couple projects across the last 5 years.
The example code will be a Python back-end app, but the techniques will apply in other programming languages, and not only for back-end applications.
The presentation assumes at least a passing familiarity with Docker and docker-compose.
Wokół code coverage i wymuszania w kodzie określonego poziomu pokrycia narosło wiele mitów. Z pewnością można popsuć sobie w ten sposób przyjemność z kodowania i dorobić sporo głupiej roboty, ale można też wykorzystać je dla większej produktywności czy poczucia większej kontroli i łatwiejszego wchodzenia we flow.
W tej prezentacji podyskutujemy o strategii testowania i procesie rozwijania kodu, który świetnie komponuje się z 100% pokryciem kodu i nie zostawia złych wspomnień.
Przyjdź koniecznie, jeśli uważasz pisanie testów za smutny obowiązek.
I'm a passionate software developer who's used to creating business-critical applications and handling the challenges and pressure that come with that. I love Python, Linux, and all software that's both elegant and resilient. I have a strong belief in gradual change, evolutionary architecture, and continuous testing. I like staying close to the state of the art in my areas of expertise, but I've noticed that inspiration can come from pretty much anywhere.
🏢 DEPLOYED – Twój partner technologiczny w Krakowie!
Jesteśmy software housem z Krakowa, który od 2011 roku dostarcza dedykowane rozwiązania cyfrowe dla klientów z różnych branż.
Tworzymy systemy webowe, aplikacje mobilne, oprogramowanie IoT oraz platformy e-commerce.
💻 Nasze technologie:
✅ Backend: Python / Django
✅ Frontend: ReactJS / React Native, TypeScript
✅ AI & Big Data
✅ Cloud & DevOps: AWS, Docker, Ansible, RabbitMQ, Nginx, Redis
✅ Monitoring & Automatyzacja: Grafana, Prometheus, Celery
✅ Testowanie: Jest, Babel
✅ Zarządzanie stanem: Redux
🔧 Specjalizujemy się zarówno w tworzeniu nowych projektów od zera, jak i w pracy z istniejącymi, starszymi kodami.
Pomagamy modernizować przestarzałe technologie, aby Twoja firma była bezpieczna i zgodna z najnowszymi trendami rynkowymi.
📂 Sprawdź nasze realizacje: 🔗 Portfolio
👥 Chcesz dołączyć do naszego zespołu?
🎯 Ciągle się rozwijamy i rekrutujemy na różne stanowiska! Sprawdź aktualne oferty:
🚀 Postaw na innowację – współpracuj z nami!