I have two versions of a Java applications. The second version is indeed resulted after applying some changes to the first version. These changes are applied automatically using a genetic programming algorithm to improve some non-functionality aspects of the program such as speed.
To become sure the behavior of system is not changed, I run test cases. However, the problem I face is that I only need to run test cases that are related to applied changes. Otherwise, it will be very time consuming if I want to run all test cases. I know there are some continuous testing plugins such as Infinitest which can detect affected test cases related to applied changes, and then run those affected test cases. However, it seems these plugins do not work outside of IDE.
What I need is a pluging that I can call that in my program (my GP application) to take two versions of the program and all test cases, and then detect testcases related to changes applied in the second version. The detected test cases can then be run to find the possible bugs.