| You are trolling here aren't you ? > Because something something about closed systems vs open systems and putting energy into systems (eg, people working on the codebase)? Did you ever lead a project that spans at least half decade? And is this a coherent thought or something something whatever? > I’m not sure what “best” means here, but there are other tools for improving software quality beyond tests, including and in particular formal methods. There are other tools, but the one that makes refactoring possible is the best you can do regarding OP question. If you have a bad quality code, you need to refactor, no? You might want to have some other tools like superb docs, formal proofs etc. but those do next to 0 when you need to refactor and guarantee that you didn't break hell. > What quality guarantees do tests make? That the build passes the test suite? Notice the part about "good tests" which are "very hard" to do. |
I’ll retract my comment about formal methods since I’ve never actually used them in a refactor. And I agree that tests make refactoring easier. But none of this demonstrates for me that tests are the “best” tool for facilitating a refactor.
And so, what specific quality guarantees do good tests make?