首页 > 解决方案 > 空手道 RuntimeHook:如何运行 beforeSuite() 和 afterSuite()?

问题描述

按照空手道 1.0 升级指南中提到的这个示例,我编写了这个简单的测试类:

package feature;

import com.intuit.karate.RuntimeHook;
import com.intuit.karate.Suite;

import com.intuit.karate.Results;
import com.intuit.karate.Runner;
import static org.junit.jupiter.api.Assertions.*;

public class KarateTest implements RuntimeHook {

    private static final int THREAD_COUNT = 1;

    @Override
    public void beforeSuite(Suite suite)
    {
        System.out.println("########## beforeSuite() is fired! ##########");
    }

    @Test
    public void testParallel() {
        
        Results results = Runner.path("classpath:feature")
        .parallel(THREAD_COUNT);

        assertEquals(0, results.getFailCount(), results.getErrorMessages());
    }
        
    @Override
    public void afterSuite(Suite suite)
    {
        System.out.println("########## afterSuite() is fired! ##########");
    }

}

我希望在日志中看到 beforeSuite() 和 afterSuite() 方法打印的行。测试成功运行,但钩子似乎没有触发。我错过了什么?

标签: karate

解决方案


推荐阅读