我可以指定伪造的随机种子吗?

时间:2018-10-10 21:19:27

标签: c# unit-testing bogus

我正在使用Bogus生成测试数据。

有没有办法设置它使用的种子,以便它以相同的顺序生成相同的测试数据?

例如,此测试将失败:

var person1 = new Bogus.Person();
var person2 = new Bogus.Person();
Assert.AreEqual(person1.FullName, person2.FullName);

但是,有一种方法可以重置种子,使其不会重置,即:

Bogus.Config.SetSeed(1);
var person1 = new Bogus.Person();

Bogus.Config.SetSeed(1);
var person2 = new Bogus.Person();

Assert.AreEqual(person1.FullName, person2.FullName);

1 个答案:

答案 0 :(得分:1)

readme举例说明:

//Set the randomzier seed if you wish to generate repeatable data sets.
Randomizer.Seed = new Random(8675309);

但是,设置种子意味着随机生成器的结果一致。要执行您想要的操作,您需要在每次调用之前重置种子以获得相同的结果。