Java:在另一个测试中访问对象的最佳实践

时间:2019-03-04 23:20:13

标签: java junit

我有两个单独的junit测试.java文件。它在下面具有以下约定

import org.mockito.Mock;
import org.testng.annotations.AfterMethod;
import org.testng.annotations.BeforeMethod;
import org.testng.annotations.Test;

@Test (groups = "integration")
public class myOneIntegrationTest {
    @BeforeMethod
    @SneakyThrows
    public void beforeMethod() {...}

    @AfterMethod
    public void afterMethod() {...}

    @Test
    @SneakyThrows
    public void testOne() {...}

测试文件已本地化,因此它正在测试一个对象

我需要一项功能测试,该功能需要在javaOne.java中的beforeMethod中创建的对象和在javaTwo.java的beforeMethod中创建的另一个对象

我真的不想从每个Java文件中复制粘贴beforeMethod。是否可以仅将其导入并在javaThree.java中对其进行测试?

1 个答案:

答案 0 :(得分:1)

factory pattern派生的creational pattern被称为Object Mother。 马丁·福勒(Martin Fowler)对此进行了Article in 2006的阅读,进一步阅读。

我认为这非常适合测试,但您确实应该用通过Lombok生成的任何样板代码(例如@Builder)替换。