4

我们一直在试图弄清楚如何停止 Greenmail,以便在 Junit 测试用例失败时它不会占用 3025 端口。

当单元测试失败时,Junit 似乎绕过了 @After 注释(如果我错了,请纠正),并继续进行以下测试。不幸的是,其他测试运行@Before,它启动了一个新的greenmail服务器,试图挂接到端口3025,从而导致另一个测试出现错误。

理想情况下,我们希望仅在实际失败的那些上显示失败,并且没有 1 或 2 个测试用例由于 Greenmail 问题而使测试套件的其余部分失败。

有什么帮助吗?

示例代码


@Before
public void setup() {
    greenMail = new GreenMail(ServerSetupTest.SMTP);
    greenMail.start();
}

@After
public void tearDown() {
    greenMail.stop();
}

@Test
public void someFailTest() throws IOException{fail();};

@Test
public void someGoodTest(){assert(true);}; // greenmail busted so this also throws up
4

0 回答 0