c# - 如何获取 DeploymentItem 的名称?

标签 c# mstest deploymentitem

我想摆脱这段代码中的一些重复。遵循 DRY 原则。
如您所见,文件/deploymentItem 的名称重复了。

[TestMethod]
[DeploymentItem("TestData/TestExcel.xlsx")]      <-- 
public void GivenAnExcel_ConverToPDF()
{
    const string filename = "TestData/TestExcel.xlsx";     <-- 
    var result = pdfConverter.ConvertExcelDocument(filename);
    AssertIsPdf(result);
}
  • 有没有办法在不使用文件名的情况下以编程方式访问 DeploymentItem?
    或者
  • 我能否以某种方式以编程方式获取文件名?

不,我不能使用除 mstest 之外的其他测试框架;-)

最佳答案

你可以简单地这样做:

[TestClass]
public class Test
{
    const string filename = "TestData/TestExcel.xlsx";

    [TestMethod]
    [DeploymentItem(filename)] 
    public void GivenAnExcel_ConverToPDF()
    {
        var result = pdfConverter.ConvertExcelDocument(filename);
        AssertIsPdf(result);
    }
}

关于c# - 如何获取 DeploymentItem 的名称?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13357237/

相关文章:

c# - 使用 C# 设置功能保存密码时的最佳做法是什么?

c# - 服务总线 token 的签名无效

C# 如何处理 "check on"、 "cancel"并等待异步 Web 请求?

visual-studio - 如何清除测试方法的 [Ignore] 缓存? (无需重新启动 Visual Studio)

c# - 是否可以拥有动态的动态部署项?

c# - 如何从文件夹在 StackPanel WPF 中添加多个图像?

c# - 我怎样才能使 WebTest 失败?

c# - 如何将 PostSharp 与最小起订量一起使用?

c# - 使用 DeploymentItem 和 WatiN 的 MSTest - 文件未被复制