gpt4 book ai didi

c# - 在 Azure 版本上执行 Selenium C# 脚本时,不会读取 Excel 文件

转载 作者:行者123 更新时间:2023-12-03 06:45:00 26 4
gpt4 key购买 nike

我在 Azure 上托管了一些 Selenium C# 测试,它们需要在项目树中查找预构建的 excel 文件(存储在 bin 文件夹内),以执行一些文件上传验证方案。

当它们在本地执行时,这些场景不会出现任何问题,但当在 Azure 上执行时,它们会收到以下错误。

invalid argument: File not found : D:\a\r1\a_Selenium_Tests\TestApplication\bin\Debug\netcoreapp3.1\Files\SC003_CT014_ActiveEmployees.xlsx

这些文件确实存在于以下路径中:...\bin\Debug\netcoreapp3.1\Files...

我使用的代码是:

string root = Directory.GetCurrentDirectory() + "\\Files\\"+ file;

您知道是否缺少文件配置或以其他方式构建文件路径吗?

感谢您的帮助:D

最佳答案

Directory.GetCurrentDirection() 返回当前工作目录,而不是 DLL 文件所在的文件夹。当前工作目录是另一回事。在您的情况下,当前工作目录可能类似于 D:\a\r1\。相反,您需要获取测试程序集所在的文件夹:

var binDirectory = Path.GetDirectoryName(GetType().Assembly.Location);
// ^^^^^^^^^
var excelFilePath = Path.Combine(binDirectory, "Files", "SC003_CT014_ActiveEmployees.xlsx");

注意:如果您从静态方法执行代码,或者您想指定不同的路径,请将 GetType() 替换为 typeof(ClassName)程序集而不是当前正在执行的程序集。

关于c# - 在 Azure 版本上执行 Selenium C# 脚本时,不会读取 Excel 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/74186883/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com