-
Notifications
You must be signed in to change notification settings - Fork 157
NUnit1011
Mikkel Nylander Bundgaard edited this page Apr 25, 2020
·
2 revisions
Topic | Value |
---|---|
Id | NUnit1011 |
Severity | Error |
Enabled | True |
Category | Structure |
Code | TestCaseSourceUsesStringAnalyzer |
TestCaseSource argument does not specify an existing member. This will lead to an error at run-time.
To prevent tests that will fail at runtime due to improper construction.
[TestCaseSource("MyIncorrectTestSource")]
public void NUnit1011SampleTest(string stringValue)
{
Assert.That(stringValue.Length, Is.EqualTo(3));
}
public static object[] MyTestSource()
{
return new object[] {"One", "Two"};
}
In the example above, the test case source is named MyIncorrectTestCaseSource
, but the test case source is actually named MyTestSource
. Because the names don't match, this will be an error.
Rename the TestCaseSource
to match:
[TestCaseSource("MyTestSource")]
public void NUnit1011SampleTest(string stringValue)
{
Assert.That(stringValue.Length, Is.EqualTo(3));
}
public static object[] MyTestSource()
{
return new object[] {"One", "Two"};
}
Or even better, use nameof
so that the compiler may assist with mis-matched names in the future:
[TestCaseSource(nameof(MyTestSource))]
public void NUnit1011SampleTest(string stringValue)
{
Assert.That(stringValue.Length, Is.EqualTo(3));
}
public static object[] MyTestSource()
{
return new object[] {"One", "Two"};
}
Configure the severity per project, for more info see MSDN.
#pragma warning disable NUnit1011 // TestCaseSource argument does not specify an existing member.
Code violating the rule here
#pragma warning restore NUnit1011 // TestCaseSource argument does not specify an existing member.
Or put this at the top of the file to disable all instances.
#pragma warning disable NUnit1011 // TestCaseSource argument does not specify an existing member.
[System.Diagnostics.CodeAnalysis.SuppressMessage("Structure",
"NUnit1011:TestCaseSource argument does not specify an existing member.",
Justification = "Reason...")]
Copyright (c) 2018 The NUnit Project - Licensed under CC BY-NC-SA 4.0