TDD mit Unit Tests - Ein guter Start für Refactoring oder lieber nicht

preview_player
Показать описание
Code Refactoring ist wichtig und gerade hier sind PHPUnit Tests ein tolles Tool. Aber wie so oft beim Thema Unit Tests weiß man nicht genau, wie man den Anfang macht. Das Team gemeinsam zusammenbekommt und erste Schritte geht. Dabei ist es ja auch entscheidend alle Entwickler abzuholen. Daher die Frage, ab wann kann man denn Unit Tests einsetzen? Sollte man sie erstmal verstehen und begreifen oder gleich als Tool bei TDD - Test Driven Development nach vorne bringen?

00:00 Einleitung TDD und PHPUnit für Code Refactoring und Verlosung PHP Magazin
01:10 Pair Programming als wöchentliches PHP Training
01:56 Was ist wenn sich Entwickler*innen gegen Tests verweigern
03:22 Beratungsresistente Entwickler - was kann man tun
03:55 PHPUnit Testing Tutorial Serie
04:45 Vorteile von Test Driven Development im Agenturalltag
05:55 Einmal die Woche eine Stunde gemeinsam im Mob Programming arbeiten
08:08 Bessere Arbeitsbedingungen durch Tests
08:13 PHP Magazin Gewinnspiel

Coding Videos
YouTube live coding videos that brings you up
Live templates in PhpStorm
How to build a full website in two hours
How to test a website in one hour

Eure Meinung ist gefragt
Falsche Versprechen in Vorstellungsgesprächen
Website Cookie Overkill
Was ist wenn Agenturen Kunden betrügen - Eine Frage der Ehre

Softwarequalität wird nicht bezahlt - Arbeitsbedingungen in der IT
IT Jobs Office Hell - Digitale Revolution verheizt Developer

Weitere PHP Tutorial deutsch Videos
Sulu Skeleton mit DDEV aufsetzen Part 1
Sulu CMS von Scratch 2.5 Stunden Live Coding mit Advanced PhpStorm Tricks bei Live Templates
Webdesign Antitalent - PHP Training für Testing und Refactoring
Рекомендации по теме
Комментарии
Автор

Also in meinen bisherigen Projekten von nebenberuflichen Auftraggebern kam ich noch bei gar keinem bis zum Thema testen. Da kamen schon viel früher so Sachen geflogen, wo mir der Auftraggeber die Laune am Projekt verdorben hat. Und wenn ich keine Laune hab, dann schwindet auch mein Bedarf an Softwarequalität. Da hab ich von: Kunde ignoriert das Projekt komplett, ist bei vereinbarten Meetings nicht anwesend und liest keine Emails bis zu der Auftraggeber ist selbst Entwickler und beleidigt mich was zur Hölle MVC und Git sein soll alles erlebt. Daher empfinde ich die Testingdebatte eher als Luxusproblem.

Ich seh bei Testing das gleiche Problem wie mit Linux auf dem Desktop: hätte mehr Einsatz verdient, aber keiner will es, weil es Veränderung und anfangs Mehraufwand kostet. Und das ist schade. Konnte bisher noch niemanden von automatisierte Tests überzeugen. Da hatte ich bisher mit dem Linux Desktop mehr Glück gehabt :D

DerTim
Автор

Vielleicht kannst du auf deinem Kanal mal eine Buchvorstellung einiger Klassiker machen wie z.b. Clean Code, The Art of Unit testing, Working effectively with legacy code, Growing Object oriented software guided by tests, Refactoring improving the design of existing code. Das sind Bücher die ich persönlich als sehr zeitlose und wertvolle Klassiker in dem Bereich betrachte, vielleicht gibt es noch andere Empfehlungen, die ich noch nicht kenne, dann würde ich mich in dem Video auch freuen neue Bücher kennenzulernen.

kvnx
Автор

Ich geh mittlerweile auch dazu über Unit-Tests für Legacy Code zu schreiben. Ist wirklich nicht einfach aber ich merke einfach extrem, dass sich das lohnt.
TDD hab ich auch schon probiert aber ich hab da noch so meine Probleme damit. Ziel ist aber schon, das langfristig mal durchzuführen

marcelleusch
Автор

Eine weitere Anregung für ein Video wäre die Plattform Exercism.io Das ist finde ich sehr gut geeignet um TDD zu üben, es sind sehr viele Sprachen verfügbar (auch php) und speziell der Mentor Mode eignet sich sehr gut zu Diskussionen bezüglich der erarbeiteten Lösung. Dadurch das man Tests oft vorgegeben hat und diese nach und nach aktivieren muss kommt man in die iterative Entwicklung mithilfe von Unit Tests gut rein. Als zweiten Schritt könnte man dann anfangen Aufgaben ohne vorgegebene Tests komplett selber zu bearbeiten.

kvnx
Автор

Danke für das Video. Ich hätte eine Anregung und zwar ist der Ton in diesem Video nicht so gut vielleicht kannst du Versuchen für deine Videos ein Headset zu verwenden?

kvnx
Автор

Man kann Leute sehr schnell für TDD öffnen wenn man z.b. folgende Frage stellt: “Wie wollen wir prüfen das bei z.b. der Code mit einer Datenbank exception klarkommt”
Das Ganze manuell herzustellen ist super aufwendig und mit Unit Tests sehr einfach und das kann kaum jemand leugnen 😄

Also gerade bei Fehlerbehandlung oder auch Zeitabhängigen Ereignissen sind unit Tests mit mocks nicht zu schlagen. Das will ich sehen wie jemand einen scheduled task der an einem bestimmten Wochentag nachts ausgeführt werden soll manuell testet 😂. Nur um mal ein paar gute Beispiele für pro unit Testing einzuwerfen.

kvnx
Автор

Für refactoring von legacy code ist tdd essentiell. Nur leider ist legacy code oft untestbar. Zumindest meine Erfahrung.

binaryburst