我有一个用 Junit 编写的硒测试,我正在通过 Jenkins 工作运行。测试从 Eclipse 和我的本地命令行 (Win7) 执行得很好。只有当我通过 Jenkins 执行测试时,测试才会失败。
当我通过 Jenkins 作业运行测试时,一些测试失败了。经过一番调查,我发现一些在运行时从属性文件中读取的属性正在被成功读取,而另一些则没有。在读取的 30 个属性中,有 9 个会失败,并设置为 null 以执行测试,这会导致测试失败。
我只从一个属性文件中读取。如果我更改其中一个失败的常量以读取不同的属性,它会正常读取。这让我觉得属性文件有问题,但我已经看过了,它看起来很好。
这是我用来读取属性文件的代码片段:
属性 uiStrings = new Properties(); ...
InputStream isStrings = LandingPage.class.getResourceAsStream("/locale_" + locale); uiStrings.load(isStrings); ...
BROWSE_PANEL_TEXT = uiStrings.getProperty("browse_panel_text");
HOME_BUTTON_TITLE = uiStrings.getProperty("home_button_title");
在上面,BROWSE_PANEL_TEXT 未定义,而 HOME_BUTTON_TITLE 按预期设置。属性在单独的文件中定义如下:
browse_panel_text=浏览
home_button_title=主页
据我所知,用于定义属性字符串的语法在失败和成功读取之间是相同的。读取文件的语法也是相同的。我难住了。
我在 Win7 机器上开发测试,测试在 Mac 上执行。
提前致谢。R