Working Draft

Revision 469: Testing mit Angular


Listen Later

Vanessa, Schepp und Stefan reden heute mit Mathias Schäfer (@molily) über Testing mit Angular.

Schaunotizen
[00:00:29] Testing Angular
Nachdem Mathias im Jahr 2017 sein Werk „Robust Clientside JavaScript“ veröffentlich hat, ist das nun erschienene „Testing Angular“ so etwas wie dessen Fortführung. Angular musste in dem Fall als Framework herhalten, allerdings können Mathias Empfehlungen aus dem Buch auf alle anderen Frameworks übertragen werden. Angular hat den Vorteil, dass es zu Beginn etwas mehr Tooling mitliefert als etwa React. Das Problem ist aber, dass man anschließend ohne Unterstützung bei der Test-Methodik allein gelassen wird. Diese Lücke wollte Mathias schließen. Dabei ist Mathias ohne vorgefertigte Meinung gestartet. Stattdessen ging es ihm darum, Testing zu durchdenken und zu einer eigenen Position zu kommen, die dann begründet wird. Das Buch erklärt, was sinnvolle Tests sind. Für Mathias sind es diejenigen Tests, die Komponenten als Ganzes testen, also inklusive dem DOM und nicht nur die dahinterstehende (Klassen-)Logik. Letzteres nennt man „White-Box-Tests“, weil man zum Testen wissen muss, wie das JavaScript aufgebaut ist. Besser sind aber die „Black-Box-Tests“, die das HTML abtesten und denen völlig egal ist, was hinter den Kulissen an Abläufen notwendig ist. Diese Art von Tests nehmen zudem stärker die Nutzerperspektive ein und sie gehen bei späteren Refactorings weniger oft kaputt, was weniger Wartungsaufwände an den Tests zur Folge hat. Mathias reiht sich damit hinter Vordenker wie Kent C. Dodds ein. Was Mathias als mitgeliefertes Werkzeug nicht überzeugt hat, ist Protractor, und zwar vorwiegend weil es WebDriver-basiert ist und weil es ein paar seiner ehemaligen Verzahnungen mit Angular verloren hat. Stattdessen bevorzugt er Cypress, das wir vor nicht allzu langer Zeit hier im Podcast zum Thema hatten. Folgende Links spielen im Laufe unseres Gesprächs eine Rolle:

  • Mathias‘ Testing Helpers
  • Spectator
  • TS Mockito
  • ng Mocks
  • PlayWright
  • Das Buch „Testing Angular Applications“ von Manning
  • Keine Schaunotizen
    expect(Exception)
    Vanessas Podcast über Frontend Testing.
    flowchart.fun
    Eine Web-App, in der man Flußdiagramme mit Hilfe von speziellem Markup schreibt/zeichnet
    ...more
    View all episodesView all episodes
    Download on the App Store

    Working DraftBy Vanessa Otto, Peter Kröner, Hans Christian Reinl, Stefan Baumgartner, Christian »Schepp« Schaefer


    More shows like Working Draft

    View all
    Chaosradio by Chaos Computer Club Berlin

    Chaosradio

    7 Listeners

    Bits und so by Undsoversum GmbH

    Bits und so

    23 Listeners

    Wissenschaft und Technik by Bayerischer Rundfunk

    Wissenschaft und Technik

    9 Listeners

    Raumzeit by Metaebene Personal Media - Tim Pritlove

    Raumzeit

    11 Listeners

    Logbuch:Netzpolitik by Metaebene Personal Media - Tim Pritlove

    Logbuch:Netzpolitik

    7 Listeners

    c’t uplink - der IT-Podcast aus Nerdistan by c’t Magazin

    c’t uplink - der IT-Podcast aus Nerdistan

    5 Listeners

    Apfelfunk by Malte Kirchner & Jean-Claude Frick

    Apfelfunk

    8 Listeners

    heiseshow by heise online

    heiseshow

    2 Listeners

    UKW by Metaebene Personal Media - Tim Pritlove

    UKW

    1 Listeners

    kurz informiert by heise online by heise online

    kurz informiert by heise online

    2 Listeners

    Mac & i - der Apple-Podcast by Mac & i

    Mac & i - der Apple-Podcast

    0 Listeners

    Wo wir sind ist vorne. by Moritz Glantz und Sarah Groß

    Wo wir sind ist vorne.

    0 Listeners

    Bit-Rauschen: Der Prozessor-Podcast von c’t by c't Magazin

    Bit-Rauschen: Der Prozessor-Podcast von c’t

    1 Listeners

    KI-Update – ein heise-Podcast by Isabel Grünewald, heise online

    KI-Update – ein heise-Podcast

    6 Listeners

    Passwort - der Podcast von heise security by Dr. Christopher Kunz, Sylvester Tremmel

    Passwort - der Podcast von heise security

    3 Listeners