Java >> Java Tutorial >  >> Java

Java-Testwoche 18 / 2016

Es gibt viele Blogs zur Softwareentwicklung, aber viele von ihnen veröffentlichen nicht regelmäßig Testartikel.

Außerdem ist mir aufgefallen, dass einige Softwareentwickler keine Blogs lesen, die von Softwaretestern geschrieben wurden.

Das ist schade, denn ich denke, dass wir viel von ihnen lernen können.

Aus diesem Grund habe ich beschlossen, einen Newsletter zu erstellen, der die besten Testartikel teilt, die ich in der letzten Woche gefunden habe.

Fangen wir an.

Technisches Zeug

  • Accurest and Stub Runner 1.1.0.M3 stellt die neuen Funktionen der kommenden Version Accurest 1.1.0 vor. Accurest ist eine Testbibliothek, mit der Sie HTTP-Aufrufe und Messaging-Funktionen stubben können. Das Lustige ist, dass ich, obwohl es sehr nützlich aussieht, erst vor ein paar Wochen davon gehört habe. Deshalb habe ich mich entschlossen, bei der Verbreitung zu helfen.
  • Erreichen einer Codeabdeckung von 100 %. Getter und Setter testen. ist ein Beitrag, der beweist, dass Sie bekommen, was Sie messen. In einer idealen Welt würde niemand von Ihnen verlangen, dass Sie eine 100%ige Codeabdeckung haben, weil es „unmöglich“ ist. Die traurige Wahrheit ist jedoch, dass Sie möglicherweise mit dieser Anforderung konfrontiert werden. Wenn Sie dies tun, wird Sie dieser Blog-Beitrag aus der Ruhe bringen.
  • Datengesteuerte JavaScript-Tests mit Jasmine identifizieren einen grundlegenden Mangel von Jasmine (es unterstützt keine datengesteuerten Tests) und bieten zwei Problemumgehungen, die Ihnen helfen, datengesteuerte Tests mit Jasmine zu schreiben.
  • Einführung in JUnit 4 ist eine Sammlung von drei kostenlosen Lektionen meines Kurses Test With Spring. Diese Lektionen bieten eine Einführung in JUnit 4-Testklassen, Testrunner und Regeln. Beachten Sie, dass diese Lektionen für Personen gedacht sind, die JUnit 4 noch nicht verwendet haben.
  • Einführung in PowerMock beschreibt, wie Sie die Einschränkungen von Mockito überwinden können, indem Sie die PowerMockito Mockito-Erweiterung und PowerMock verwenden. Obwohl ich denke, dass Sie PowerMock niemals in einem Greenfield-Projekt verwenden sollten, stimme ich zu, dass dies nützlich sein kann, wenn Sie in einem Legacy-Projekt arbeiten, das eine chaotische Codebasis hat, die nicht zum Testen entwickelt wurde.
  • Unit-Tests mit benutzerdefinierten JUnit-Regeln, Anmerkungen und Ressourcen beschreibt, wie Sie eine JUnit-4-Regel erstellen können, die die Testdaten, die in JSON angegeben sind, aus einer Datei liest und in ein Objekt umwandelt. Die Tests der ursprünglichen Beispiele schreiben nur Zusicherungen für die erstellten Objekte, aber ich denke, dass Sie diese Technik zum Erstellen von Tests verwenden können, die ihre Eingabedaten aus einer JSON-Datei lesen und an die getestete Methode weitergeben.

Das wirklich Wertvolle

  • Ob und wann Sie testgetriebene Entwicklung verwenden sollten ist ein ziemlich umfassender Beitrag, der sowohl die Vor- als auch Nachteile der testgetriebenen Entwicklung beschreibt. Es identifiziert auch die Gründe, warum TDD im wirklichen Leben nicht häufiger verwendet wird. Dieser Beitrag hat viele Gedanken aufgeworfen und ich mag die Tatsache, dass der Autor angedeutet hat, dass Entwickler den kurzfristigen Gewinn mehr schätzen als den langfristigen Gewinn. Leider ist mir das auch aufgefallen, aber ich glaube nicht, dass das der Hauptgrund ist, warum Entwickler TDD nicht machen. Ich denke, dass Entwickler TDD nicht verwenden, weil es viel schwieriger ist, als die Tests zu schreiben, nachdem der Code geschrieben ist.
  • Alles A/B-Tests:Die Netflix Experimentation Platform beschreibt, wie Netflix A/B-Tests durchführt. Ich weiß, dass einige Leute wahrscheinlich denken, dass A/B-Testing nicht in diesen „Newsletter“ gehört. Ich denke jedoch, dass wir jede Technik studieren sollten, die uns hilft, bessere Produkte zu entwickeln, und niemand kann die Nützlichkeit von A/B-Tests leugnen. Da dieser Blogbeitrag auch ziemlich interessant ist, habe ich mich entschieden, ihn hier hinzuzufügen.
  • Testautomatisierung – bin ich der Einzige? ist ein Post, der wie ein Rant aussehen könnte, aber eigentlich ist es ein Post, der die Herausforderungen (oder Probleme) der Testautomatisierung gut beschreibt. Wenn Sie mehr Zeit haben, empfehle ich Ihnen, auch die Kommentare zu lesen, da sie möglicherweise noch nützlicher sind als der Blogbeitrag.
  • Der miserable Zustand des „Testens“ im Jahr 2016 ist ein Gerede, das argumentiert, dass automatisiertes Testen nicht dasselbe ist wie von Menschen durchgeführtes Testen. Ich habe es genossen, diesen Tiraden zu lesen (ich genieße gute Tiraden), aber ich denke, das ist ein bisschen besorgniserregend, weil so viele Leute zu denken scheinen, dass Testautomatisierung die Notwendigkeit des Testens überflüssig macht. Das ist absurd. Jeder, der versucht hat, einen komplexen Workflow zu automatisieren, sollte wissen, dass dies nicht möglich ist, da es zu teuer ist und die erstellten Tests oft so spröde sind, dass sie von allen einfach ignoriert werden.
  • Welche Probleme haben wir mit unserer Testautomatisierung? identifiziert vier konkrete Probleme, mit denen das Team des Autors konfrontiert war, als es seine Testbemühungen automatisierte. Ich finde es toll, dass dieser Beitrag auf echten Erfahrungen basiert und auch einige Tipps enthält, die Ihnen helfen könnten, diese Probleme zu vermeiden oder zu lösen.

Es ist Zeit für Feedback

Weil ich möchte, dass dieser Newsletter Ihre Zeit wert ist, bitte ich Sie, mir dabei zu helfen, ihn zu verbessern.

  • Wenn Sie Feedback zu diesem Newsletter haben, teilen Sie Ihre Gedanken im Kommentarbereich mit.
  • Wenn Sie einen Blogbeitrag über automatisiertes Testen oder Softwaretests geschrieben haben, pingen Sie mich auf Twitter an.
  • Sie können diesen Blogbeitrag auf Twitter teilen.

P.S. Wenn Sie sicherstellen möchten, dass Sie Java Testing Weekly nie verpassen, sollten Sie meinen Newsletter abonnieren.


Java-Tag