VS 云负载测试 - 找不到目录/文件
Posted
技术标签:
【中文标题】VS 云负载测试 - 找不到目录/文件【英文标题】:VS Cloud Load Test - Could not locate directory/file 【发布时间】:2018-02-23 19:35:47 【问题描述】:我正在尝试在工作中对我们的应用程序进行负载测试,并且我创建了一个可以在本地完美运行的 Web 测试(编码的 Web 测试)。
它使用一个帮助类来创建应用程序所需的数据,例如姓名、电子邮件等(每个应用程序必须是唯一的)。
Name 由驻留在帮助类中的方法返回,作为 Name 类的对象,该对象非常基本,包含 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】:通过问题中列出的选项进行部署会将文件复制到TestResults\name+datetime+etc\Out
目录中以供测试运行。问题中的相对路径似乎期望Apps-Load-Performance-Tests
目录与TestResults
位于同一目录中,甚至更接近根目录。
对于云负载测试,需要将文件部署到运行测试的云计算机,并部署到与已部署测试的其他部分相同的目录中。我建议更改GetRandomName
方法和相关代码中的目录路径,以期望文件位于TestResults\...\Out
目录中以供运行。还要确保将文件部署到那里。
【讨论】:
谢谢!就是这样 - 当测试在云上运行时,它无法在定义的路径中找到文件。所以我最终做的是 @"/filename.csv" 用于本地执行和 @"filename.csv" 用于云(注意斜线 - 没有斜线它不会在本地执行 - 很奇怪)再次感谢您的帮助和你的时间!干杯 我也面临同样的问题。我究竟应该将文件保存在我的项目中的哪个位置,以便在运行测试时可以找到该文件? @ShridharRKulkarni 将其放在解决方案中的某个目录中,并确保已部署该文件。以上是关于VS 云负载测试 - 找不到目录/文件的主要内容,如果未能解决你的问题,请参考以下文章
Cypress.io:服务器错误 | 404 - 找不到文件或目录