VS云负载测试 - 找不到目录/文件

时间:2018-02-23 19:35:48

标签: c# visual-studio azure-devops load-testing msloadtest

我试图在工作中加载测试我的应用程序,并且我创建了一个在本地完美运行的Web测试(编码网络测试)。

它使用帮助程序类来创建应用程序所需的数据,如名称,电子邮件等(每个应用程序必须是唯一的)。

作为Name类的对象驻留在helper类中的方法返回名称,该类非常基本包含2个道具First和Last。

public static Name GetRandomName()
{
    // if (!File.Exists(@"..\..\..\Apps-Load-Performance-Tests\Data Files\fNames_1.csv")) return new Name();

    var allLines = File.ReadAllLines(@"..\..\..\Apps-Load-Performance-Tests\Data Files\fNames_1.csv");
    var maxLength = allLines.Length;
    var random = new Random();
    return new Name
    {
        First = allLines[random.Next(maxLength)],
        Last = allLines[random.Next(maxLength)]
    };
}

问题是当我通过Visual Studio云运行负载测试时 - 它会抛出FileNotFoundException(fNames_1.csv)

在我的测试设置中 - 我已经启用了部署'检查并添加了.csv文件和包含.csv文件的目录......但这似乎无法解决问题。

我还尝试添加[DeploymentItem()]属性,但没有去...

我做错了什么?任何帮助或如果有人能指出我正确的方向 - 我非常感激。

提前致谢!

1 个答案:

答案 0 :(得分:1)

通过问题中列出的选项进行部署,将文件复制到TestResults\{{name+datetime+etc}}\Out目录中以进行测试运行。问题中的相对路径似乎期望Apps-Load-Performance-Tests目录与TestResults位于同一目录中,甚至更接近根目录。

对于云负载测试,需要将文件部署到运行测试的云计算机,并将其部署到与部署测试的其他部分相同的目录中。我建议更改GetRandomName方法和相关代码中的目录路径,以期望文件位于运行的TestResults\...\Out目录中。还要确保将文件部署到那里。