Java 使用事务但使用JUnit的负载测试
我想在JUnit中加载测试。情况如下: 我想用它们的事务、EntityManager和内存数据库测试EJB3。 对于负载测试,我使用ContiPerf 2。 我在谷歌上搜索了一下,发现了不同的方法。在其中一些示例中,他们使用嵌入式EJBContainer,在另一个示例中,他们只是初始化EntityManager,然后从EntityTransaction启动事务 对于一个简单的单元测试,使用EntityManager和EntityTransaction就足够了,但是当我想进行负载测试时,我发现了几个问题,但最大的问题是概念性的 我的第一个方法是:Java 使用事务但使用JUnit的负载测试,java,transactions,junit4,ejb-3.0,contiperf,Java,Transactions,Junit4,Ejb 3.0,Contiperf,我想在JUnit中加载测试。情况如下: 我想用它们的事务、EntityManager和内存数据库测试EJB3。 对于负载测试,我使用ContiPerf 2。 我在谷歌上搜索了一下,发现了不同的方法。在其中一些示例中,他们使用嵌入式EJBContainer,在另一个示例中,他们只是初始化EntityManager,然后从EntityTransaction启动事务 对于一个简单的单元测试,使用EntityManager和EntityTransaction就足够了,但是当我想进行负载测试时,我发现了几
@Test
@PerfTest(invocations = 1000, threads = 5)
@Required(max = 1000, average = 250)
public void testTransaction() {
et.begin();
MyEntity myEntity = new MyEntity();
service.performAction(myEntity);
thenMyEntityIsOk(myEntity);
et.rollback();
}
但是在这个测试中,我在做负载测试时遇到了问题,因为如果我使用提交而不是回滚,那么回滚的问题是相同的
在这之后,我认为问题可能是事务,然后我开始使用嵌入式EJBContainer,但是我在依赖项和执行方面有很多问题
关于如何在JUnit中进行负载测试,您有什么建议吗?问题不在测试中,而是您没有使用事务:请参阅