我正在尝试开发一个自动回归测试框架作为单元测试。所以我使用有序测试来组合不同的测试步骤,并以易于使用的方式组合它们。出于配置目的,我想使用runsettings文件,尤其是 TestRunParameters。这工作没有任何错误,但只有在单独执行每个测试时才有效。如果我使用orderedtest执行测试,TestContext我用来访问 TestRunParameters 的对象不再包含它们。我在直接测试方法的同时调试对象,同时也使用有序测试进行测试。在第一种情况下,对象具有所需的属性,但是当按照orderedtest 执行测试时,对象看起来完全不同。这两种类型的执行之间有什么主要区别吗?
不同的 TestContext 对象:
我得到的错误如下:
Ergebnis StackTrace: at Regression.FileSystem.FileSystemTestInitializer(TestContext context) in \FileSystem.cs:line 18
Ergebnis Meldung: Class Initialization method Regression.FileSystemTestInitializer threw exception. System.NullReferenceException: System.NullReferenceException: Object reference not set to an instance of an object..
Run Code Online (Sandbox Code Playgroud)
我执行以测试和加载设置的代码如下:
namespace Regression
{
[TestClass]
public class FileSystem
{
private static Logger logger = LogManager.GetCurrentClassLogger();
private static Dictionary<String, String> runSettings = new Dictionary<String, String>();
[ClassInitialize]
public static void …Run Code Online (Sandbox Code Playgroud)