在单元测试中编写文件:单一单元测试工作,但不是全部

时间:2015-05-08 09:37:55

标签: c# multithreading unit-testing

我们有一些代码,它可以帮助我们将我们测试的数据写入一些JSON文件。

我的代码很简单:

internal static void WriteDataSourcesToJson(IEnumerable<ReportDataSource> dataSources, string jsonFilePath)
{
    lock (_lockObject)
    {
        string jsonString = JsonConvert.SerializeObject(dataSources);

        using (var fs = new FileStream(jsonFilePath, FileMode.OpenOrCreate))
        using (var sw = new StreamWriter(fs))
        {
            sw.Write(jsonString);
        }
    }
}

它工作正常,如果我运行单个测试,但只要我在类上选择“全部运行”,似乎代码会在没有警告的情况下被忽略。我想到了一个线程问题,但Lock没有帮助,也没有收到错误消息。

“全部运行”是否与运行单个单元测试有所不同?

编辑:我们在命名空间Microsoft.VisualStudio.TestTools.UnitTesting中使用默认的Microsoft单元测试

0 个答案:

没有答案