Comment by bhaak
19 hours ago
It passed all the tests.
If you can't trust your test suite to catch an automatic language translation you shouldn't trust it at all. :)
19 hours ago
It passed all the tests.
If you can't trust your test suite to catch an automatic language translation you shouldn't trust it at all. :)
Tests can only prove the presence of bugs, but not their absence. If the AI can access the tests, it can easily make them pass by just adding additional if statements. It doesn't mean the code is actually correct.
What if we only trusted the test suite a reasonable amount, instead of pretending trust must either be blindly total or nonexistent?
It also modified many of the tests to make them pass in mischievous ways. You can't trust a test suite to catch regressions if the new version doesn't use the same test suite.
Do you have some examples?
Ah, I just learnt that you don't. Jarred's comment saying exactly that: https://news.ycombinator.com/item?id=48133806
4 replies →
I think demonstrating broken behavior in the new build would be interesting if you have a non passing test from the original suite
The entire underlying system has been replaced. The test suite is written around the current fuzzy edges and past problem areas, not every single behavior of the existing platform.
"If you can't trust your test suite to catch a hardware floating point arithmetic bug, you shouldn't trust it at all."
"If you can't trust your test suite to catch a JVM bug, you shouldn't trust it at all."
"If you can't trust your test suite to catch a recurring memory error, you shouldn't trust it at all."
A wise teacher once told me a good programmer looks both ways when crossing a one way street.