Skip to content

nchillo/mutalk

 
 

Repository files navigation

Mutalk - Mutation Testing for Smalltalk

Mutation Testing Framework for Pharo Smalltalk.
Explore the docs »

Report a defect | Request feature

GitHub release Build Status Coverage Status

During the 70s, mutation testing emerged as a technique to assess the fault-finding effectiveness of a test suite. It works mutating objects' behavior and looking for tests to “kill” those mutants. The surviving mutants are the starting point to writing better tests. Thus, this technique is an interesting alternative to code coverage regarding test quality.

However, so far it is a “brute force” technique that takes too long to provide useful results. This characteristic has forbidden its widespread and practical use regardless the existence of new techniques, such as schema-based mutation and selective mutation. Additionally, there are no mutation testing tools (to our knowledge) that work on meta-circular and dynamic environments, such as Smalltalk, so compile and link time are the current technique's bottleneck.

This Smalltalk-based tool was developed at the University of Buenos Aires (Argentina) in the context of the final thesis work. The tool uses Smalltalk's dynamic and meta-programming facilities to notably reduce the time to get valuable output and help to understand and implement new tests due to its integration with the rest of the environment.

License

  • The code is licensed under MIT.
  • The documentation is licensed under CC BY-SA 4.0.

Quick Start

Installation

To load the project in a Pharo image or declare it as a dependency of your project follow this instructions.

Contributing

Check the Contribution Guidelines

About

Mutation Testing in Pharo Smalltalk

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Smalltalk 100.0%