如何在单元测试中引用文件?

问题描述 投票:4回答:4

我正在进行一些单元测试,我有一个包含一些数据的JSON文件。我正在编写一些单元测试来获取该文件并使用该数据。

因此,这些数据将用于实时和单元测试。

如果可能的话我不想保留两份副本,所以我想知道如何引用这个文件?

c# visual-studio unit-testing nunit
4个回答
5
投票

我认为您正在寻找Visual Studio的Add - > Existing Item...对话框中的“添加为链接”功能:enter image description here

然后,您需要将此文件的“复制到输出目录”参数设置为以下值中的任何值:

  • 始终复制
  • 复制如果更新

即yaazkssvpoi

您可以在enter image description here找到更多详细信息。


1
投票

在Visual Studio中,右键单击项目,然后选择“添加 - >现有项”。请注意,“添加”按钮是一个下拉按钮。其中一个选择是“添加为链接”。这将把文件添加到您的项目而不复制它。在文件属性上,您可以为“复制到输出目录”选择“复制如果更新”。然后,您可以在测试中使用该文件,而无需保留两个副本。


1
投票

我通常使用:

this MSDN article

然后在“部署”部分的TestSettings.Settings文件中指定该文件。

这样,单元测试将在Visual Studio中运行,也可以在命令行中运行。


0
投票

一种选择是使用构建后步骤将文件复制到需要的位置。

另请查看有关如何部署测试文件的文章:[TestMethod] [DeploymentItem(@"MyProject.Tests\TestFiles\file.txt")] public void MyTest() { var myfile= "file.txt"; Assert.IsTrue( File.Exists(myfile), "Deployment failed: {0} did not get deployed.", myfile ); }

© www.soinside.com 2019 - 2024. All rights reserved.