2
如何可以为以下的单元测试我设置AutoFixture:AutoFixture单元测试参数设置
[Theory, ... ] // <- what goes here?
public void MyTest(int param1, string param2)
{
...
}
第一参数可以采用随机产生整数所以AutoFixture自然地适合。 第二个不能是相同的方式。我需要第二个从编译时未知的动态生成值列表中取值。我需要告诉AutoFixture,但我不知道如何。
编辑:
在我的具体情况我需要的是该字符串PARAM是某种类型的属性名称。我想说到AutoFixtue:“嘿,为参数2,从这个列表,该列表是myType.GetPropertyNames()
不AutoFixture支持此方案采取随机字符串
但是你需要知道在编译时的值。如果“预定义”字符串是某种类型的属性名称,该怎么办?我需要能够将有效的字符串传递给我的测试方法,而无需对它们进行硬编码。这可能吗? –
>“但是你需要知道编译时的值。”正确。 准确。如果你想测试一些行为和随机数据是不够的,你需要在编译时知道这些值。否则,如果未指定输入测试数据,您将如何检查系统的行为? –
我不觉得它必须是完全随机的或完全硬编码的值。我想通过测试数据,以某种方式对我的测试进行格式化,使其有意义。在我的具体情况下,我需要的是字符串参数是某种类型的属性名称。我想对AutoFixtue说:“嘿,对于param2,从列表中取出一个随机字符串,列表是myType.GetPropertyNames()”。 –