たとえば、全てグーになる場合が原理的に起こり得る以上は、絶対的に失敗しない検証は本質的に無理であると思います。
ただし、例えば100万回に1回だけ失敗するテストを書いておくと、現実的にはその他の要因で失敗する確率の方が相当高いのではないかと思います。
(例えばCI環境の場合には、立ち上げの失敗など)
100万がダメなら、10億でも1兆でも、増やせば精度は上がるのかなと。
テストが失敗する確率が0でないことがどうしても問題になる場合には、(a)そのテストは通常はスキップするようにして適宜必要に応じて人間が動かすか、(b)テストで失敗することを許容するか、いずれかではないかと思います。あとは、(c)シードを固定するか。