Saint Michel Annecy, IT Campus, testing for L3 CSI and Master MS2D. It covers many aspects of modern software testing, from unit tests to, integration test, embedded development testing, etc
- Savoir développer et mettre en place des tests unitaires sur une application
- Savoir développer et mettre en place des tests d’intégration sur une application
- Savoir configurer un pipeline d’intégration continue sur une application
-
Les tests unitaires
- Qu’est-ce qu’un test ?
- Les tests unitaires
- Les bonnes pratiques
- Le Test Driven Development
- Le code coverage
- Tests avec langage naturel
-
Les tests d’intégrations
- Les tests d’intégration
- Le fonctionnement
- Les bonnes pratiques
-
L’intégration continue
- Mise en place d’une plateforme d’intégration continue (GitLab CI)
- Conteneurisation d’une application (API)
- Configuration d’un pipeline de tests
Pytest means Python, it's a framework to test Python using Python. First create a virtual environment.
python3 -m venv venvThen activate it.
source venv/bin/activateThen install pytest and other dependencies of that project.
pip install -r requirements.txtRunning the tests.
pytestA piece of code can test another piece of code from the same project. But testing can be performed through a more abstract protocol, radio, serial, etc. The goal of those tests is to discover a very cheap microcontroller, the ATMega328P, and its development environment, the Arduino one. It highlights the differences between the Arduino framework and its simple MCU and our modern desktop environment looking at various aspects such as arithmetic precision and memory management.
Development will be made under VSCode using Arduino plugin to access copilot and easily develop the embedded software and Arduino IDE to have the full set of options of the Arduino environment. See the IDE installation procedure on the Arduino website.
Open the arduino/arduino.ino file with Arduino IDE and upload it to the board.
At the point the test test_arduino.py should pass.
Pytest means Python, it's a framework to test Python using Python. First create a virtual environment.
python3 -m venv venvThen activate it.
source venv/bin/activateThen install pytest and other dependencies of that project.
pip install -r requirements.txtThis README is just a help, the complete documentation is available in the doc folder as a LaTex source.
To build it to a PDF it required LuaLaTex.
Dependencies can be installed on Ubuntu with the following command :
sudo apt install texlive-luatex texlive-latex-base texlive-latex-recommended texlive-pictures texlive-latex-extra ghostscript texlive-fonts-extraThen build the PDF documentation :
/usr/bin/bash compile-latex.shTo compress the PDF, install ghostscript :
sudo apt install ghostscriptAnd run the following command :
/usr/bin/bash compress-pdf.shTo compress images, install pngcrush and jpegoptim using the following command :
sudo apt install pngcrush jpegoptimThen run the following command :
/usr/bin/bash compress-image.shCheck the LaTex syntax in an active virtual environment :
/usr/bin/bash checkmytex.sh