Java: Reihenfolge der Testmethoden mit FixMethodOrder in JUnit festlegen

JUnit Testmethoden sollten so geschrieben werden, das sie unabhängig von anderen Methoden sind. Die Reihenfolge der ausführung der Test-Methoden in einer Testklasse ist auch nicht garantiert und kann von lauf zu lauf unterschiedlich sein. Das ist auch gut so.

Manchmal möche man aber dennoch eine bestimmte Reihenfolge. Dies kann seit JUnit 4.11 mit der @FixMethodOrder(MethodSorters.NAME_ASCENDING Annotation durchgeführt werden.

Die Testklasse wird einfach mit der @FixMethodOrder(MethodSorters.NAME_ASCENDING markiert. Z.B.

bildschirmfoto-2016-10-30-um-07-38-13

Ohne ist die Ausführung z.B.:

bildschirmfoto-2016-10-30-um-07-37-32

Und mit Annotation z.B.:

bildschirmfoto-2016-10-30-um-07-37-55

CSV Testdaten Generator (Oder wer testet ist feige? NEIN) und mehr Tools für CSV to …

Mit dem CSV-Testdaten-Generator kann schnell und einfach jegliche Art von Testdaten erzeugt werden. Die dann leicht in JUnit und sonstwie weiterverwendet werden können.

Auch andere gute Tools für die Bearbeitung von CSVs sind dort zu finden. z.B.

  • Convert CSV To Delimited – reformat, filter, and sort delimited data
  • Convert CSV To Fixed Width or ASCII Table
  • Convert CSV To GeoJSON
  • Convert CSV To HTML Table or MediaWiki Table New
  • Convert CSV To JSON
  • Convert CSV To KML
  • Convert CSV To Multi-line Data
  • Convert CSV To SQL
  • Convert CSV To XML
  • Convert CSV To YAML
  • Pivot CSV Tool
  • Convert Fixed Width To CSV
  • Convert GeoJSON To CSV
  • Convert HTML Table To CSV
  • Convert JSON To CSV
  • Convert SQL To CSV
  • Convert XML To CSV
  • Convert YAML To CSV

Z.B. geben wir in der Eingabe Zeile folgende Schlüsselwörter an:

seq; first; last; name; email; latitude; longitude; domain; string

Wählen noch die Anzahl der zu erzeugenden Datensätze, z.B. 10 und klicken auf „Generate Test Data“.

Schon werden die Testdaten erzeugt, z.B.:

Mit klick auf „Save to Disk“ können die Testdaten in eine Datei gespeichert werde.

Die Testdaten werden auf dem Client erzeugt, und werden also nicht an den Hersteller der Seite gesendet.

Nun können wir die CSV Testdaten auch in eine HTML Tabelle umwandeln, hier nur die Spalten 1,2,3 eingegeben:

[seq first last
1 Nevaeh Flores
2 Raymond Castillo
3 Alex Vega
4 Emery Chapman
5 Ayla Price
6 Eden Ortega
7 Eva Higgins
8 Jaden Maxwell
9 Bryson Wood
10 Gabriel West

Wer die CSV dann in XML umwandel möcht, kann dies auch leicht mit dem CSV to XML Convertertun. Hier mal die CSV die oben generiert wurde:

Oder mal eben 1000 Passwörter die 20 Stellen haben generieren mit:

seq,string(20)

Weitere Ideen?

JUnit 4.12 erschienen

Nach über 2 Jahren ist nun eine neue Version von JUnit veröffentlicht worden. Die Releasenotes sind auf Github zu finden. In folgenden Bereichen gab es Ergänzungen:

Ok, dann mal gleich das aktuelle Maven Projekt TWFlug auf die neue Version 4.12 angepasst:

Und siehe da, alles GRÜN:
Bildschirmfoto 2014-12-14 um 16.47.52

Mehr über JUnit oder drei Gründe warum man keine JUnit-Tests schreiben sollte.

SelBlocks für Selenium installieren oder „Wer testet ist feige“

Das Plug-In SelBlocks für die Selenium IDE darf nicht fehlen. Also über diese Seite installieren und den Browser neu starten:
Bildschirmfoto 2014-10-07 um 19.53.13

Das Plugin ist eine Erweiterung für die Selenium IDE und fügt der IDE die folgenden doch immer nötigen Befehle hinzu:

  • if, elseIf, else
  • try, catch, finally, throw
  • for, foreach, while, continue, break
  • call, function, return
  • loadJsonVars, loadXmlVars, forJson, forXml
  • exitTest

Die Selenium IDE muss natürlich vorhanden sein:
Bildschirmfoto 2014-10-07 um 19.54.42

Eine ausführliche Beschreibung und auch Beispielen sind auf dieser Seite zu finden.

Wie geht ein Quickinstall von MiniPwner auf einem laufenden OpenWrt Version 12 mit ext. Usb-Stick?

Installation von MiniPwner auf einer lauffähigen OpenWrt Version mit externen USB-Stick. Einfach auf der Konsole folgende Befehle absetzen:


opkg update
opkg install http://minipwner.com/20120514/downloads.openwrt.org/snapshots/trunk/ar71xx/packages/dsniff_2.4b1-2_ar71xx.ipk
opkg install luci-theme-bootstrap mc htop iftop ettercap tar openssh-sftp-client mdk3 nmap tcpdump aircrack-ng aircrack-ptw kismet-client kismet-server perl openvpn nbtscan snort karma samba36-client elinks yafc

Hat das sich der Mac OS X einen Flashback Virus eingefangen?

Im Terminal kann man das schnell testen, einfach:

defaults read /Applications/Safari.app/Contents/Info LSEnvironment

eingeben und RETURN drücken und

defaults read ~/.MacOSX/environment DYLD_INSERT_LIBRARIES

und RETURN. Es muss wenn alles ok ist, jeweils folgende Antwort geliefert werden:

"The domain/default pair of (...) does not exist"

Java 7 ist DA!

So, jetzt ist Java 7 da. Was braucht man zum ausprobieren?

Eine Eclipse Version die Java 7 unterstützt. Das geht noch nicht mit Helios. Deshalb einen „Nightly Build“ herunterladen.
Dann über Update neue Software über diese URL den JDK 7 patch herunterladen.

Was dann noch fehlt ist das JDK 7 von Oracle.

In den Projekt Einstellungen unter Java Compiler die 1.7 auswählen und nun der erste Test.

In Java 1.7 sind jetzt Unterstriche (_) in Literalen möglich, um besser zu gliedern z.B.

Das Ergebnis:
Telefonnummer 1: 11223344
Telefonnummer 2: 1122.33

Weitere Neuerungen mit Beispielen wie „String in switch“ kommen hier dann demnächst.

IPhone

Cool, jetzt kann ich auch übers IPhone von überall posten 🙂 Und bearbeiten geht auch 😉 Und noch ein paar Plugins ergänzt ua. den Tweet Button.