我使用selenium(带有Nunit的c#)进行测试。 我为我的网站提供了一些xml文件(包含凭证和其他输入)。使用基于Visual Studio Cloud的负载测试时,它在[TestInitialize]方法
中获取这些xml文件时会抛出文件不正常异常这是我采购内部测试初始化
的方法InputTestData = new TestData(System.IO.Path.Combine(TestContext.CurrentContext.TestDirectory + @" \ TestData")); PagesInformation =新页面(System.IO.Path.Combine(TestContext.CurrentContext.TestDirectory + @" \ PageDictionaries \ SUT_Pages"));
答案 0 :(得分:1)
由Visual Studio Team Services运行的负载测试,即在Microsoft Azure云中运行,在我们几乎无法控制的计算机上运行。它们在Microsoft的用户帐户下运行,具有这些用户的权限。所有测试套件和相关文件都必须包含在从测试开发计算机传输到云的包中。这通常意味着一切都必须是Visual Studio解决方案的一部分。包含测试数据的文件必须将Copy to output directory
设置为Copy ...
值之一。然后,文件将在其名称中包含$...Directory...
或$...Dir...
的上下文参数所指定的目录之一中找到。其中一个目录名也可以在数据源的Connection string
属性中看到,它显示为|DataDirectory|\filename.csv
。
问题和评论显示数据文件应位于C:\TFS\Product\Source\
的子目录中。我已经完成的云测试运行似乎将所有测试文件部署到d:\0\td\c3fd4\TestRun
等目录中。我希望设置权限,以便测试套件无法写入d:\...\TestRun
以外的目录;防止恶意测试套件破坏计算机。
问题的解决方案是将测试数据文件部署到将被复制到运行测试的计算机的目录中。