Каков был бы лучший способ иметь дело
с этим?
На самом деле нет способа "справиться с этим", пока не будут установлены требования. Либо это требование, чтобы тасование гарантировало, что последовательности вышли из строя (в этом случае тасование не является действительно «случайным»), либо все в порядке, что они в том же порядке. Если для shuffle допустимо возвращать что-либо в том же порядке, вы можете написать тест, который будет проверять распределение результатов по большому количеству прогонов в сравнении с ожидаемым распределением, но это примерно так же, как вы можете получить для тестирования "random " Результаты. Если для shuffle неправильно возвращать один и тот же ордер, вы можете запускать функцию несколько раз, чтобы обеспечить приемлемый уровень уверенности в том, что shuffle не вернет один и тот же ордер, поэтому применяется тот же общий принцип. Используйте большое количество прогонов и сравните результаты с принятыми допусками.
Надеюсь, это поможет!