2 回答

TA貢獻1828條經驗 獲得超3個贊
根據提供的信息,它看起來像是在嘗試創建一個名為:
'C:\xxx\project\project-test\build\reports\tests\test\packages\| \test\testxml.xml | test_topic | EVENT_TYPE | \result'
你能展示代碼嗎?我懷疑你正在傳遞整行數據,而不僅僅是(我將瘋狂地猜測你正在對數組執行.toString()而不是傳入數組的第一個元素)messagePath
messagePath

TA貢獻1865條經驗 獲得超7個贊
我終于找到了罪魁禍首。顯然,這些文件名對應于 JUnit 用于生成 Cucumber 測試報告的默認行為。在 *NIX 上,這不會提供任何問題。但是,在 Windows 上,由于 中的管道,這將導致異常。這顯然有些特別,因為我在互聯網上發現的大多數例外都是s。這就解釋了為什么我花了這么長時間才找到答案,我專注于例外。ExamplesIOExceptionFileNotFoundException
此處的解決方案是在運行 Cucumber 測試時使用以下各項作為注釋:。JUnitOption@CucumberOptions--filename-compatible-names
Java & Spring 的代碼示例如下所示:
@RunWith(Cucumber.class)
@CucumberOptions(junit = {"--filename-compatible-names"})
public class CucumberRunner {
}
如果這些不間斷的操作系統相關選項是默認的而不是可選的,那就太好了。
添加回答
舉報