Statistical tests are very picky. They have been designed by mathematicians in a mathematical ideal vacuum void of all reality. The method works in those ideal conditions, but when you take that method and apply it in messy reality where everything is flawed, you may run into some trouble. In simple cases, it’s easy to abide by the assumptions of the statistical test, but as your experiment gets more and more complicated, there are more and more potholes for you to dodge. Best case scenario is, your messy data is just barely clean enough that you can be reasonably sure the statistical test still works well enough and you can sort of trust the result up to a certain point.
However, when you know for a fact that some of the underlying assumptions of the statistical test are clearly being violated, all bets are off. Sure, you get a result, but who in their right mind would ever trust that result?
If the test says that the medicine is works, there’s clearly financial incentive to believe it and start selling those pills. If it says that the medicine is no better than placebo, there’s similar incentive to reject the test result and demand more experiments. Most of that debate goes out the window if you can be reasonably sure that the data is good enough and the result of your statistical test is reliable enough.