我想要一个执行所有@before方法的Junit Runner,然后是所有@Test方法,然后是所有@Efter方法。

这就是我的系统测试的工作方式。运行@before方法,以设置测试数据和方案。该应用程序已启动。然后,在后台运行的应用程序运行@test方法。这些@Test方法可以更改数据或响应应用程序。然后,框架等待应用程序完成。之后,运行 @后方法以验证测试结果。

我已经使用了JUNIT注释,断言方法和其他各种位。但是我只是不知道如何使用Junits跑步者以这种方式执行测试方法。我无法在Junit 4.8中制作“计算机”接口的头或尾巴,也无法弄清楚如何将规则应用于此。

有帮助吗?

解决方案

这不是Junit所做的。 Junit具有强调独立单位测试的设计理念。因此,它不是系统测试的自然框架。您想做的事情非常适合TestNG(作为设计目标试图跨越单元和系统测试)。

在junit中@before和 @ofter在之前和之后运行 每个 测试。您可以使用套件将这种东西打入Junit,该套件引用了所有测试,并负责所有设置和拆卸,因此套件的@beforeclass和@AfterClass方法会在套房之前和之后运行,如果您组织起来,正确地可以是您的所有系统测试。

当junit方法变得越来越大时,该代码中存在很多组织挑战,因此我建议您考虑和替代框架,如果这是您想做的大部分。

其他提示

我认为您只能通过一种实际的测试方法来解决此问题,只有调用是您的实际测试,而您不称为Ssuch。

有点像:

@Before
public void beforeTest(){}

@After
public void afterTest(){}

@Test
public void test(){
    test1();
    test2();
    test3();
}

public void test1(){}

public void test2(){}

public void test3(){}
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top