Felix, Marc, Mat, Pfleidi und Ingo haben sich zusammen gefunden um über das Testen von Software zu sprechen.
Trotzdem den Toten der Woche
WinampSinn und Zweck
Ausführbare SpezifikationSicherheit beim RefactoringErleichterung beim Verschieben von Designentscheidungen“Ausprobieren” von ObjektdesignSample code wie Interfaces/Objekte/Binaries funktionieren solltenSchutz vor Regressions (speziell mit CI)Performance Regressionen erkennenSchutz vor Broken-Windows-PhänomenNebeneffekt: Gut testbarer Code ist oft flexibler und besser wartbarWas testet man?
Unit TestIntegration TestAcceptance TestWeb Testing (Browser Automation)Vulnerability TestingFuzz Testing - Spezielle Form von Vulnerability Testing/Quality AssuranceProperty based testingInput validation: Paradedisziplin SQL injectionStichwort: Checked Exceptions - z.B. in Java für Fälle, die häufig auftretenPenetration TestsqlmapMetasploit frameworkPerformance TestingTracer BulletLoad TestingSlowloris“PWN Testing” (Neu! TM!)(Code Metrics)KomplexitätSandy Metz rules for developers[SOLID Principle](http://en.wikipedia.org/wiki/SOLID_(object-oriented_design))Code-CoverageValgrindWie entwickelt man testgetrieben?
Test-driven development (TDD) (inside out)Behavior Driven Development (BDD) (outside in)Feature Driven Development (FDD)Stubs/Mocks/Fixtures
StubsMocksFixturesData-FactoriesFactory GirlMocks aren’t stubsJava Frameworks
jUnit, TestNGMockito, SpockFIT ist Testing-Porn für ManagerPython Frameworks
STDLIB to the rescueUnittestDoctestDocletDocblockdocoptPython Testing ÜberblickRuby Frameworks:
Test-Unit (aka: old stdlib)Minitest (aka: stdlib)WHY NO BEFORE?RSpec21MochaCucumber (Behavior Driven Testing)HTTP Client testingVCRFaraday Mock AdapterWebmockFakewebFile System: FakeFSZeit: TimecopJS Frameworks
VowsJasmineMochaQUnitPHP
PHPUnitSimpletestBehatUnsere Projekte
PoddingMlkserious-bgpainload (test suite)viddl-rbInfrastruktur
Testing macht erst mit CI richtig Sinn / CI macht erst mit Testing richtig SinnJenkins CITravis CI Free KommerzAtlassian BambooCoverallsCode ClimateXcode Bots, Mac OS X ServerVim Syntax Checker: syntasticpep8, pylintJSLintfakerAuch: fakerAuch: Data::FakerVorträge
Therapeutic RefactoringBoundariesBücher zum Thema
Test Driven DevelopmentExtreme ProgrammingPractical Object Oriented Design in Ruby