IM-FIT applies mutation testing to Python.
-
Install python3 and some requirements:
sudo apt-get update && sudo apt-get install python3 python3-venv python3-pip
-
Install requirements:
pip install -r requirements.txt
Terminal command to open interface
python3 main.py
PS: Before first run IM-FIT, the command
chmod +x *
must enter the terminal opened from IM-FIT folder.
Fig 1. IM-FIT Home Page
The goal of IM-FIT is to offer the user a comprehensive and effective guide to its usage by providing a user manual upon opening.
Fig 2. IM-FIT Start Page
IM-FIT's scans can be tailored to specific workloads and chosen code snippets. Once the scanning process is complete, it generates fault plans that can be used in testing procedures. These fault plans contain information on which file to mutate the code.
Fig 3. IM-FIT Scan Page
During the test run, mutants are categorized as either killed or survived when compared to the original code. The primary aim of the testing process is to kill all mutants. If any mutants survive, it indicates that the software works correctly despite the fault.
Fig 4. IM-FIT DNN Mutation Module Page
The continuous development of artificial intelligence and deep learning systems has increased the requirements for training and testing these technologies. In line with this requirement, in order to improve the reliability and robustness of Deep Neural Networks (DNN), the Deep Mutation Module performs customizable tests, error injection and result analysis according to the user's needs.
This study has been supported by the Scientific and Technological Research Council of Turkey (TÜBİTAK) under the project number 22AG040, titled "Advanced Technologies Platform for Sustainable Cities (SÜİT)".
See the LICENSE file for license rights and limitations (Apache-2.0 Licence).