如何在部署期间使用参数初始化Arquillian addClass

时间:2018-06-13 15:56:33

标签: java unit-testing junit junit4 jboss-arquillian

我正在测试Arquillian为我们的j2ee app编写单元测试用例。

应用程序使用1.6使用DAO模式使用JDBC支持java和数据库连接。

按照测试用例示例,

@RunWith(Arquillian.class)
public class UnitTest {

    @Deployment
    public static JavaArchive createDeployment() {
        return ShrinkWrap.create(JavaArchive.class)
            // here DAO has constructor which accepts the jdbc connection
            // How to pass JDBC connection as parameter  
            .addClass(BenDao.class)
            .addClass(BenCargo.class)
            .addAsManifestResource(EmptyAsset.INSTANCE, "beans.xml");
    }

    @Inject
    BenDao benDao;
    @Inject
    BenCargo row;

    @PostConstruct
    public void postConstruct() {
    }

    @Test
    public void should_create_greeting() {

        try {
            row = benDao.select("findById",101);
        } catch (Exception e) {
            e.printStackTrace();
            System.out.println(e.getMessage());
        }

        Assert.assertEquals("Hello, Earthling!","Earthling");
    }

}

请建议如何使用数据库连接初始化DAO。此外,如果有更好的方法,这将是伟大的。

感谢。

0 个答案:

没有答案