Seriously. The way I read this, the code is designed to produce different results each time it is run.
Well, okay, that might make sense. The inputs have uncertainty, so the result will necessarily have uncertainty. You'd think the code would then loop and "do the uncertainty math" on the conclusion. THAT result should be repeatable withing a defined uncertainty / Z-value, whatever you choose for your distribution.
At any rate, instead of GIGO, we have garbage in, garbage algorithm, garbage out ... GIGAGO
To properly regression test, there should be a way to circumvent the randomness so as to get a repeatable answer. Otherwise, how do you distinguish between a breaking change and an expected random result?