Getestet mit:Python 2.7
Voraussetzungen:Python Projektaufbau fuer Test-Driven Development
0

Software testing: simuliere Grenzwerte oder physische Interaktionen mit mock

Ein Mock ist der Ersatz einer Funktion in einem Softwaretest, unter anderem zum gezielten Setzen von Grenzwerten. Besonders nuetzlich ist Mock fuer Software Tests auf dem Raspberry Pi, da es erlaubt, Sensorwerte oder physische Interaktionen wie das Schalten von Pins zu simulieren.

Angenommen, ein Python Projekt ist folgendermassen aufgebaut:

Im Unterverzeichnis tests/ wird die Funktion count_errors gemockt und gibt statt dessen den Idealwert 0 zurueck. In einem weiteren Test kann statt dessen ein hoher Wert mit mock uebergeben werden.

Nun kann mit weiteren assert-Anweisungen das Verhalten des Programmes bei 0 Fehlern getestet werden.

Eine lambda Funktion erlaubt eine noch kuerzere Schreibweise:

Links
Pin Schaltung simulieren: http://www.knight-of-pi.org/de/komplexe-gpio-interaktionen-mit-call_args_list-einfach-testen
lambda Funktion: http://www.knight-of-pi.org/lambda-funktionen

Knight of Pi

Johannes Bergs aka Knight of Pi. Diploma in Bioinformatics, some Webdesign and Python coding then. Living in the beautiful city of Vienna.

Kommentar

Time limit is exhausted. Please reload CAPTCHA.