我想生成包含已執行測試信息的 XML 報告文件。以前我@Rule在 JUnit4 中使用如下所示,但現在我想顯示注釋或一些簡短的描述而不是 testName。經過一些研究,我發現@DisplayNameJUnit5 似乎適合我的需求?,F在我必須更新 my@Rule以顯示@DisplayName內容而不是testName[number].className. 測試是用 JUnit 類編寫的,具有以下結構@Test@DisplayName("This text should be displayed as name")public void testy1() {...}為了顯示運行測試的結果和名稱,我使用以下方案創建了新規則@Rulepublic TestRule watchman = new TestWatcher() { @Override public Statement apply(Statement base, Description description) { return super.apply(base, description); }@Overrideprotected void succeeded(Description description) { try { junitWriter.write("\n <test>" + "\n <name>" + description.getDisplayName() + "</name>" + "\n <result>.. + "\n <message>.. + "\n </test>"); } catch [..] }@Override protected void failed(Throwable e, Description description) { //same scheme with error }}要開始我運行的測試Result result = JUnitCore.runClasses(mainSuiteClassCreatingReport);System.out.printf("Test ran: %s, Failed: %s%n", result.getRunCount(), result.getFailureCount());在生成的 XML 文件而不是“DisplayName”注釋中,我不斷收到methodName[number].className. 有人可以幫我以我想要的方式顯示/保存它嗎?
添加回答
舉報
0/150
提交
取消