Testing NUnit-相同名称的多个属性?链接到需求
我将所有系统测试与测试用例和需求联系起来。每个需求都有一个ID。每个测试用例/系统测试各种需求。每个代码模块都链接到多个需求 我正试图找到最好的方法,将每个系统测试与其驾驶要求联系起来 我希望做一些类似的事情:Testing NUnit-相同名称的多个属性?链接到需求,testing,nunit,visual-studio-2013,system-testing,Testing,Nunit,Visual Studio 2013,System Testing,我将所有系统测试与测试用例和需求联系起来。每个需求都有一个ID。每个测试用例/系统测试各种需求。每个代码模块都链接到多个需求 我正试图找到最好的方法,将每个系统测试与其驾驶要求联系起来 我希望做一些类似的事情: [NUnit.Framework.Property("Release", "6.0.0")] [NUnit.Framework.Property("Requirement", "FR50082")] [NUnit.Framework.Property("Requi
[NUnit.Framework.Property("Release", "6.0.0")]
[NUnit.Framework.Property("Requirement", "FR50082")]
[NUnit.Framework.Property("Requirement", "FR50084")]
[NUnit.Framework.Property("Requirement", "FR50085")]
[TestCase(....)]
public void TestSomething(string a, string b...)
然而,这将中断,因为属性是一个键值对。系统不允许我使用同一密钥拥有多个属性
我希望这样做的原因是,如果某个模块的更改涉及到这些需求,则能够测试系统中的特定需求
这将允许我们根据对代码所做的更改确定要测试的内容,而不是在每个构建上运行1000多个系统测试
一些系统测试运行时间超过5分钟(企业医疗保健系统),因此“只运行所有测试”不是可行的解决方案。我们会这样做,但只是在通过我们的环境进行推广之前
想法?您是否考虑过从NUnit.Framework.Property
派生的
通过将语言设置为C#程序并添加对nunit.framework.dll
(版本2.4.8)的引用的“查询”判断,以下内容似乎对您有用:
出于某种原因,我无法将谷歌讨论帖子的链接添加到上面的评论中,所以我也在这里添加了该帖子。(链接为)
[Requirement(new[] { "1234", "2345" })]
[Test]
public void Test()
{ }
(如果您想要一个不带“new”的语法,那么前面的答案将显示带有参数的语法。)
选项4不会按需求编号分组,而是按计数器分组。如果您想按需求编号分组,可以使用选项5:
五,。
将需求编号添加到键中,但将值留空。
它看起来像:
要求-FR12345
这样,您也可以跳过前缀,并在TE中将每个需求作为自己的类别
代码:
当然,您也可以完全跳过前缀。更性感的是:使用
公共需求属性(params string[]requirements)
您可以编写[需求(“FR50082”、“FR50084”)]
@DioF:同意。谢谢你那一匙糖!J0e,我试过了,但在测试浏览器中,它显示了[String]与字符串中的值的要求-有什么想法可以纠正吗?NUnit google讨论组上也有同样的问题,我在那里发布了一些不同选项的代码示例。
public class RequirementAttribute : CategoryAttribute
{
public RequirementAttribute(string s)
: base("Requirement:" + s)
{ }
}
public class RequirementAttribute : PropertyAttribute
{
public RequirementAttribute(string s)
: base(s)
{}
}
public class RequirementAttribute : PropertyAttribute
{
public RequirementAttribute(string[] array)
{
int i = 0;
foreach (var s in array)
{
Properties.Add("Requirement-" + i, s);
i++;
}
}
}
[Requirement(new[] { "1234", "2345" })]
[Test]
public void Test()
{ }
public class RequirementAttribute : PropertyAttribute
{
public RequirementAttribute(string[] array)
{
foreach (var s in array)
{
Properties.Add("Requirement-" + s,"");
}
}
}