Automated Testing Kit including the automated fuzz testing, mutation testing, debugging, etc. This repository encompasses a range of software testing tools and methodologies designed to enhance the robustness and reliability of software across multiple languages.****
Developed tests across Python, C, and Java focusing on applications like AVL Trees, PNG Graphics, and Data Visualization.
Utilized tools such as American Fuzzy Lop and EvoSuite to gauge the efficiency of automated test suites in comparison to manual ones, focusing on programs like pngtest and the jsoup Java library.
Crafted a Python-based tool using abstract syntax trees (AST), harnessing the ast and astor modules. This tool produces mutant variations of programs to test the resilience of test suites.
Implemented several mutation strategies, including:
Negating comparison operations Swapping binary operators Conditionally deleting certain statements All the while ensuring consistent and deterministic program outputs.
Conducted static code analysis using Facebook's Infer on projects like lighttpd webserver and jfreechart-1.5.0, aiming to pinpoint defects and drawing parallels with documented security vulnerabilities.
Integrated the Delta Debugging algorithm in Python to streamline the process of identifying the root causes behind software anomalies. Also utilized for test suite minimization while retaining essential coverage.
Proactively addressed tool setup challenges and collaborated effectively to troubleshoot issues, ensuring optimal execution across varied software testing methodologies.