Vorlage für Automatisiertes Testen mit der Programmiersprache C
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
# Testen in der Programmiersprache C
## Voraussetzungen
### Benötigte Software
#### auf ihrem privaten Rechner
- installieren Sie Ruby (https://www.ruby-lang.org/en/downloads/) - Installieren Sie das Build-Tool `ceedling` (http://www.throwtheswitch.org/ceedling)
#### privat oder Labor
clonen sie folgende Projekte von Github in einem Ordner parallel zu Ihren C-Projekten. > Zielstruktur:
> > */Projekte
> +- Unity
> +- Projekt1
> +- Projekt2
> ...
- *Unity* (Testing-Framework) https://github.com/ThrowTheSwitch/Unity
### Übungsprojekt
- dieses [Projekt](https://gogs.informatik.hs-fulda.de/Programmiermethoden_und_werkzeuge-public/Uebung-Automatisiertes-Testen-in-C) in ein Verzeichnis parallel zu *Unity* clonen - im Projekt-Verzeichnis das dort befindliche Skipt `create_folders.sh` ausführen. (`bash cr*`)
## Übung
### Fall 1
- Offnen Sie die Datei `src/test/c/test_berechnung.c` in einem Editor - Verwenden Sie das `TEST_ASSERT_EQUAL_INT` Macro aus dem *Unity* Framework für folgende Testfälle für die Methode `gcd()`: 1. 15, 20 -> 5 1. 183, 99 -> 3 1. 91, 1008 -> 7 >
### Fall 2
- die datei `src/test/c/test_berechnung.c` kopieren - Die Testprozeduren aus eier der Testdateien löschen neue Testprozeduren für die andere Prozedur aus `src/main/c/berechnung.h` mit den nachfolgenden testdaten anlegen. - Verwenden Sie das `TEST_ASSERT_EQUAL_STRING` Macro aus dem *Unity* Framework für folgende Testfälle für die Methode `convert()`: 1. 2 -> "2" 1. 3 -> "Fizz" 1. 5 -> "Buzz" 1. 11 -> "11" 1. 15 -> "FizzBuzz" 1. 12 -> "12" (schlägt fehl) >
- Ergänzen Sie die *asserts* um eine Bechreibung mit dem Macro `TEST_ASSERT_EQUAL_INT_MESSAGE` bzw. `TEST_ASSERT_EQUAL_STRING_MESSAGE`
|