Hi devs,

Context
======

Evocrash is a tool developed as part of the STAMP research project 
(https://www.stamp-project.eu/). Its goal is to take a stack trace (the use 
case is production stack traces) and generate a test that, when executed, 
reproduces the stack trace ;)

It’s using Guided Genetic Algorithm to simplify the search space (which is 
pretty cool, isn’t it? ;)). More info at 
https://github.com/STAMP-project/EvoCrash and http://www.evocrash.org/

Results
======

So far evocrash was able to generate tests for the following issues (I’ve 
pasted the generated test code as comment):
* https://jira.xwiki.org/browse/XRENDERING-422
* https://jira.xwiki.org/browse/XWIKI-14475
* https://jira.xwiki.org/browse/XWIKI-13031
* https://jira.xwiki.org/browse/XWIKI-13196
* https://jira.xwiki.org/browse/XWIKI-13916

Using
=====

The use case I see is the following:
* A user reports a problem when using XWiki and create a jira issue with a 
stack trace
* An XWiki dev finds it and runs evocrash to generate a test reproducing the 
problem
* The XWiki dev uses the test to understand the reason (breakpoints can be put 
in the IDE) of the problem and writes a better test (which can be inspired by 
the test generated by evocrash or be completely different).

Questions
========

The question we need to answer is whether we think it coud be useful or not. 
Are there cases where it can be useful?

For example if we imagine someone not knowing the xwiki code base well, maybe 
this can help him/her understand the bug in a simpler way than just having to 
read/find where the problem is in the code base?

I’ve started the work of trying to evaluate how useful it could be on the XWiki 
project by analyzing the examples above. I've only analyzed 2 ATM (see the 
links in the jira comments) and I’d be interested to have your analysis too.

WDYT?

Thanks
-Vincent

Reply via email to