Regression Testing in Agile Scenario

A step beyond automated regression testing.

I agree with the point that there is a need to test an “end-to-end set of business functions that a system contains” and that these should be “conducted repeatedly only to ensure that the expected behaviour of the system remains stable”. Aside from having a good set of automated testing tools to run regression tests it is worth looking at tools to improve the testing strategy.

Commenting on the role of machine learning in software production, in another post, I point out to a good example of how Google engineers use machine learning in in test strategies. Explained by Alek Icev, Test Engineering Manager this example is interesting because it looks at using machine learning to improve the algorithm used by the search code. As Icev points out, in “the real online world where we want to give answers (predictions) to our users in milliseconds and ask the question how are we going to design automated tests … embedded into a live online prediction system. The environment is pretty agile and dynamic, the code is being changed every hour, you want your tests to run on 24/7 basis …”

I believe that the possibilities to utilise machine learning and deep learning as a part of the test process will influence agile significantly.