jQuery Mobile: Unit Testing
()
Über dieses E-Book
In diesem shortcut wird der Leser an die Grundlagen des Unit Testings mit einem Fokus auf JavaScript herangeführt. Ebenfalls bekommt er einen grundlegenden Einblick in die Praxis der testgetriebenen Entwicklung. Anhand geeigneter Beispiele wird das Framework QUnit vorgestellt und die Möglichkeiten auch im Umfeld von jQuery-Mobile-Web-Apps erläutert.
Abgerundet wird der shortcut mit dem Thema der automatischen Tests, dem Headless Testing bzw. der Einbindung von QUnit-Tests in die Continuous-Integration-Umgebung Jenkins. Wer im jQuery-Mobile-Bereich Wissen aufbauen möchte, kann z. B. auf die shortcuts „jQuery Mobile - Basics“ und „jQuery Mobile - Advanced“ zurückgreifen. Alle im E-Book verwendeten Beispiele inklusive Quellcode sind über GitHub verfügbar.
Mehr von Marco Dierenfeldt lesen
jQuery Mobile: Einfach mobile Web-Apps entwickeln Bewertung: 0 von 5 Sternen0 Bewertungen
Ähnlich wie jQuery Mobile
Titel in dieser Serie (100)
Serviceorientierte Architektur: Anforderungen, Konzeption und Praxiserfahrungen Bewertung: 0 von 5 Sternen0 BewertungenEinstieg in Google Go Bewertung: 0 von 5 Sternen0 BewertungenAmazon Web Services für .NET Entwickler Bewertung: 0 von 5 Sternen0 BewertungenAlgorithmen: Grundlagen und Implementierung Bewertung: 0 von 5 Sternen0 BewertungenBig Data: Executive Briefing Bewertung: 0 von 5 Sternen0 BewertungenF#: Ein praktischer Einstieg Bewertung: 0 von 5 Sternen0 BewertungenHTML5 Security Bewertung: 0 von 5 Sternen0 BewertungenTesting mit Visual Studio 2012: Testing mit Visual Studio 2012 Bewertung: 0 von 5 Sternen0 BewertungenErfolgreiche Spieleentwicklung: OpenGL, OpenAL und KI Bewertung: 0 von 5 Sternen0 BewertungenIT Wissensmanagement: Theorie und Praxis Bewertung: 0 von 5 Sternen0 BewertungenQualität in IT-Architekturen: Strategie und Planung Bewertung: 0 von 5 Sternen0 BewertungenEclipse meets Java FX Bewertung: 0 von 5 Sternen0 BewertungenErfolgreiche Spieleentwicklung: OpenCL Bewertung: 0 von 5 Sternen0 BewertungenSkalierbare Softwaresysteme: Design, Betrieb und Optimierungspotenziale Bewertung: 0 von 5 Sternen0 BewertungenNFC: Near Field Communication für Android-Entwickler Bewertung: 5 von 5 Sternen5/5JavaFX Rendering & 3D Bewertung: 0 von 5 Sternen0 BewertungenTFS 2012 Anforderungsmanagement: Work Items und Prozessvorlagen Bewertung: 0 von 5 Sternen0 BewertungenJavaScript für Eclipse-Entwickler: Orion, RAP und GWT Bewertung: 0 von 5 Sternen0 BewertungenBig Data: Technologiegrundlagen Bewertung: 0 von 5 Sternen0 BewertungenJava EE Security Bewertung: 0 von 5 Sternen0 BewertungenOAuth 2.0: Client & Server Bewertung: 0 von 5 Sternen0 BewertungenHTML5 für Mobile Web Bewertung: 0 von 5 Sternen0 BewertungenUX Design für Tablet-Websites: Ein Überblick Bewertung: 0 von 5 Sternen0 BewertungenMobile Business: Was Entscheider morgen wissen müssen Bewertung: 0 von 5 Sternen0 BewertungenÜberzeugende Präsentationen: Konzeption, Technik und Design Bewertung: 0 von 5 Sternen0 BewertungenJava 7: Fork-Join-Framework und Phaser Bewertung: 0 von 5 Sternen0 BewertungenTFS 2012 Versionskontrolle: Grundlagen, Check-In Policies und Branch-Modelle Bewertung: 0 von 5 Sternen0 BewertungenNintex Workflow: Konzepte und Strategien für leistungsfähige SharePoint-Workflows Bewertung: 0 von 5 Sternen0 BewertungenJavaScript auf dem Server Bewertung: 0 von 5 Sternen0 BewertungenNutzeraspekte in Suchmaschinen: Komponenten für eine gelungene Usability-Gestaltung Bewertung: 0 von 5 Sternen0 Bewertungen
Ähnliche E-Books
Dependency Injection in Java: Testing mit CDI-Unit und DI-Frameworks Bewertung: 0 von 5 Sternen0 BewertungenTestwissen für Java-Entwickler Bewertung: 0 von 5 Sternen0 BewertungenAngularJS: Testing und Best Practices Bewertung: 5 von 5 Sternen5/5Automatisiertes Testen: Testautomatisierung mit Geb und ScalaTest Bewertung: 0 von 5 Sternen0 BewertungenJava EE Testing mit Arquillian Bewertung: 0 von 5 Sternen0 BewertungenJUnit-Profiwissen: Effizientes Arbeiten mit der Standardbibliothek für automatisierte Tests in Java Bewertung: 0 von 5 Sternen0 BewertungenKompakteinstieg: Continuous Integration mit Jenkins Bewertung: 0 von 5 Sternen0 BewertungenSoftwarestabilität in der Industrie Bewertung: 0 von 5 Sternen0 BewertungenSpock, Geb und Selenium: Testframeworks unter die Lupe genommen Bewertung: 0 von 5 Sternen0 BewertungenjQuery Mobile - Basics: Basics Bewertung: 0 von 5 Sternen0 BewertungenTesting mit Visual Studio 2012: Testing mit Visual Studio 2012 Bewertung: 0 von 5 Sternen0 BewertungenJavaFX Rendering & 3D Bewertung: 0 von 5 Sternen0 BewertungenSoftwareentwicklungsprozess: Von der ersten Idee bis zur Installation Bewertung: 0 von 5 Sternen0 BewertungenLean Testing für C++-Programmierer: Angemessen statt aufwendig testen Bewertung: 0 von 5 Sternen0 BewertungenApache Tamaya: Einstieg in die Konfiguration in Java Bewertung: 0 von 5 Sternen0 BewertungenSoftware entwickeln mit C#, WPF und dem MVVM-Konzept Bewertung: 0 von 5 Sternen0 BewertungenAgile Scrum Handbuch Bewertung: 0 von 5 Sternen0 BewertungenOSGi-Entwicklung Bewertung: 0 von 5 Sternen0 BewertungenAufsetzen, Testen und Betrieb einer Android-App Bewertung: 0 von 5 Sternen0 BewertungenArchitekturpatterns mit Python: Test-Driven Development, Domain-Driven Design und Event-Driven Microservices praktisch umgesetzt Bewertung: 0 von 5 Sternen0 BewertungenProjektmanagement mit Scrum: Tools zur Entwicklung von Software Bewertung: 0 von 5 Sternen0 BewertungenContinuous Delivery: Der pragmatische Einstieg Bewertung: 0 von 5 Sternen0 BewertungenCDI - Dependency Injection in Java EE 7: Dependency Injection in Java EE 7 Bewertung: 0 von 5 Sternen0 BewertungenZukunftssichere Architektur: So bauen Sie monolithische Anwendungen zu komponentenorientierten um Bewertung: 0 von 5 Sternen0 BewertungenErfahrungen mit Eclipse 4: aus der Praxis für die Praxis Bewertung: 0 von 5 Sternen0 BewertungeniOS Essentials: Frameworks, Tools und Twitter API Bewertung: 0 von 5 Sternen0 BewertungenNebenläufige Programmierung mit Java: Konzepte und Programmiermodelle für Multicore-Systeme Bewertung: 0 von 5 Sternen0 BewertungenMicroservices: Der Hype im Realitätscheck Bewertung: 0 von 5 Sternen0 BewertungenApache Mahout: Empfehlen, clustern, klassifizieren Bewertung: 0 von 5 Sternen0 BewertungenJavaScript für Java-Entwickler Bewertung: 0 von 5 Sternen0 Bewertungen
Informationstechnologie für Sie
Android-Entwicklung für Einsteiger - 20.000 Zeilen unter dem Meer: 2. erweiterte Auflage Bewertung: 0 von 5 Sternen0 BewertungenZertifizierung für Softwarearchitekten: Ihr Weg zur iSAQB-CPSA-F-Prüfung Bewertung: 0 von 5 Sternen0 BewertungenKompaktes Managementwissen: Die Grunstruktur agiler Prozesse Bewertung: 0 von 5 Sternen0 BewertungenAgiles Requirements Engineering und Testen Bewertung: 0 von 5 Sternen0 BewertungenJava FX - Embedded Bewertung: 0 von 5 Sternen0 BewertungenEinplatinencomputer - ein Überblick Bewertung: 0 von 5 Sternen0 BewertungenBusiness-Intelligence-Lösungen für Unternehmen Bewertung: 0 von 5 Sternen0 BewertungenBlockchain: Praktische Anwendungen, Praktisches Verständnis Bewertung: 0 von 5 Sternen0 Bewertungen
Rezensionen für jQuery Mobile
0 Bewertungen0 Rezensionen
Buchvorschau
jQuery Mobile - Marco Dierenfeldt
Hyperlinks
1 Unit Test und testgetriebene Entwicklung
1.1 Unit Tests
Grundlegendes
Auch wenn jeder schon einmal von Unit Tests gehört hat und mittlerweile beinahe für jede Programmiersprache die Möglichkeit besteht, auf mehr oder weniger einfache Weise Unit Tests zu erstellen, so gibt es doch die unterschiedlichsten Auffassungen, was Unit Tests sind und wie man sie strukturiert.
Für die Verwendung in diesem Buch möchte ich, wie in Abbildung 1.1 gezeigt, die immer wieder auftauchenden Begriffe Paket, Klasse und Unit definieren und beschreiben, was darunter zu verstehen ist.
Paket
Ein Paket ist als logische Klammer um Klassen mit dem gleichen Aufgabenbereich zu verstehen, in Abbildung 1.1 sind u. a. die Pakete Userinterface, Business und Persistence zu sehen, die die Aufgaben für Darstellung, Businesslogik und Datenhaltung beinhalten.
Klasse
Eine Klasse ist eine Funktion, die einen Container für weitere Funktionen zur Erfüllung von Aufgaben im Kontext des beinhaltenden Pakets darstellt. Mir ist bewusst, dass es das Konstrukt einer Klasse in JavaScript nicht gibt, allerdings ermöglicht uns diese Metapher eine begriffliche Unterscheidung zu den Funktionen, die sie beinhalten.
Unit
Eine Unit oder auch ein Modul ist die kleinste sinnvoll testbare Einheit. In den meisten Fällen werden es die Funktionen der Klassen sein.
Dies im Hinterkopf behaltend, möchte ich für einen Unit Test folgende Definition einführen:
„Ein Unit Test testet einen kleinen Teil einer Anwendung, indem eine Annahme des Ergebnisses einer Funktion mit dem tatsächlichen Ergebnis verglichen wird."
Abbildung 1.1: Begriffsdefinition Unit Testing
Wie klein dieser getestete Teil der Anwendung ist, wird unterschiedlich gesehen. In der Regel ist es so, dass pro Unit Test eine Funktion/Funktionalität getestet wird. Wichtig ist es, hierbei nicht nur den Gut-Fall (Happy Case) zu testen, sondern nach Möglichkeit auch das Verhalten des Quellcodes bei