aboutsummaryrefslogtreecommitdiffstats
path: root/bruiser/README.md
blob: 07139c6299a56fcc7e020607adb7a4d8e1a584eb (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
## bruiser

### What is it?
The idea is simple. bruiser will try to break your code. One way to do this is have bruiser mutate the source code and then run the code to see if it breaks. The other way to do this is have bruiser first "analyze" the code, to get to know it and then decide how to break it.<br/>

### Why?
Well you can probably use your imagination to come up with practical uses for bruiser, but I'm doing this because it's fun.<br/>

### Implementation Ideas(Or bruiser Requirements if you will)
The analysis part can be handled by m0(mutator-lvl0), while bruiser consumes the report generated by m0. I'm leaning towards using the XML reoport mostly because of X-Path.<br/>
For the "getting to know the code" part we can do a feature extraction/categorization on the reports and then have some sort of a mutation database based on the results of running the mutants.<br/>
We need to have the makefile for the source code so we can build the mutants, fork them as a separate process(we don't want to crash bruiser), get the results and repeat. For that reason bruiser might be implented as a shell of some sort.<br/>