我有一个测试套件,它链接到存储在我本地计算机上的csv文件,以便在运行测试时检查某些值/字符串是否符合预期。我正在使用与maven链接的Selenium(java)在Jenkins构建中运行。我写了一个方法来读取csv作为2D数组。这适用于文件路径/home/usr/location
但是我需要将csv文件放在许多VM上以测试生产环境。当我尝试更改为~/location
之类的相对路径时,我收到文件未找到错误。
我拥有所有正确的权限
答案 0 :(得分:2)
我建议将CSV文件与构建版本以及类路径(例如src/test/resources/csv/
)或其他内容保持一致。然后,您应该能够从类路径中查找csv文件。
或者如果您需要单独的路径,那么例如src/test/csv
应该足够了。在这种情况下,您应该能够使用./src/test/csv
之类的东西查找路径(因为maven构建的工作目录是项目目录)。
如果您真的想要使用用户的主目录,那么您可以使用System properties,查找user.home
,但请注意更多可能出现的问题{{3} }
或者,您可以使用某种环境(或应用程序管理的)属性,使CSV文件位于文件系统的某个位置,您可以根据实际环境对其进行配置。我的意思是使用-Dcsv.location=/proper/location/data.csv
启动应用程序或测试。