I have not put in any serious effort on automated testing, so my experience does not count for much on that topic.
The very brief and cursory attempts at creating automated tests did not come with results where I thought I would give it more time and serious effort.
My view of the resulting code was that it was highly complex. My trepidation did not revolve around AutoTest's capacity to generate code that was useful. My concern was that AutoTest can generate code at any given moment, but it cannot maintain that code in the face of changes (especially radical refactors). I (as a human being) am left with the chore of having to deal with the consequences of making changes to production code and then having to update test code. Because the test code is generated and complicated, I concluded that I simply did not want the burden.
Now—having stated that—it may well be that there is a way forward where there is a simple adaptation or set of procedures to follow (as a maintenance programmer) to easily handle this real world matter. However, I am unaware of it. This is why I say that my experience is not sufficient to give you good feedback to your query above.
Moreover—there are two "flavors" of use case for testing using AutoTest to generate tests:
- Generate a test at error-time in order to facilitate a TDD-style testing cycle, where AutoTest is used to recreate the precise "state" of the system at error-time and then modify code until the test passes. This then presumes that the passing test means one less bug in the code.
- Use the AutoTest test-generation feature to create tests that me as a human programmer might not think of—deepening the boundaries of what is tested and (presumably) ferreting out even more bugs.
I really like both of these ideas. I hope that someone will do the work of discovering a step-wise and general process for all of us to follow as a guideline for real world production code. I am just not aware of such a general process at this time. That does not imply such a process does not exist, but only to say I do not know it.
I had really thought I would have more time to dedicate to Eiffel coding in January and February, but we're in the throes of buying another property next door and renovating a building on our existing property so we can expand our AirBnB business. As soon as I have those two additional properties stabilized, I will turn my attention back to Eiffel in a more full time effort. I am thinking I am presently about 2-3 months from that state for myself.
Kindest Regards,
Larry