标签: mockrunner

如何使用mockrunner设置模拟队列来测试xml过滤器?

我正在使用来自http://mockrunner.sourceforge.net/的mockrunner包来为JUnit设置一个模拟队列来测试XML过滤器,其运行方式如下:

  1. 设置用于放置和获取xml输入的ftp服务器的已识别属性以及用于跟踪作业的jms队列服务器.远程等待服务器在收到队列消息后实际解析xml.
  2. 使用ftp创建一个远程目录,并使用mqconnectionfactory启动队列连接到队列服务器的给定地址.
  3. 一旦在2)中创建新队列条目,过滤器将等待出现新队列消息,表示远程服务器已完成作业.然后,过滤器从ftp中获取修改后的xml文件,并将其传递给下一个过滤器.

我正在进行的JUnit测试只需要通过启动本地ftp和模拟队列服务器来连接到过滤器来模拟这个环境,然后等待过滤器连接到队列并将新的xml输入文件放在本地目录中通过本地ftp服务器,等待队列消息,然后稍微修改xml输入,将修改后的xml放入新目录,并将另一条消息发送到队列,表示作业已完成.

我在网上找到的所有教程都使用EJB和JNDI来查找队列服务器.如果可能的话,我想通过在我的本地机器上创建一个模拟队列并以最简单的方式连接到它来避开该路由,而不是使用EJB和JNDI.

提前致谢!

queue ejb jndi jms mockrunner

5
推荐指数
1
解决办法
4686
查看次数

Servlet单元测试

目前我正在使用TestNG框架来测试应用程序业务逻辑,最近我添加了一些Servlet类.

如何在TestNg框架中对这些Servlet类进行单元测试?

java testng unit-testing servlets mockrunner

5
推荐指数
3
解决办法
5243
查看次数

Junit Mockito 初始化错误

我在网上到处找。我几乎尝试了所有方法,从删除 STS 到从我的站中删除所有代码并重新导入所有内容。我玩过依赖项、构建路径、属性等,但仍然没有任何效果。

通过CLI在Maven上运行测试工作正常,其他团队成员没有这个问题,所以这可能是我站上的一些配置。

问题:

当我尝试使用 JUnit v. 4 在 STS 中调试/运行单元测试时,我收到以下堆栈跟踪错误:

java.lang.IllegalAccessError: class org.mockito.internal.creation.jmock.ClassImposterizer$1 cannot access its superclass org.mockito.internal.creation.cglib.MockitoNamingPolicy
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:763)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:467)
at java.net.URLClassLoader.access$100(URLClassLoader.java:73)
at java.net.URLClassLoader$1.run(URLClassLoader.java:368)
at java.net.URLClassLoader$1.run(URLClassLoader.java:362)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:361)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
at org.mockito.internal.creation.jmock.ClassImposterizer.<clinit>(ClassImposterizer.java:38)
at org.mockito.internal.creation.CglibMockMaker.createMock(CglibMockMaker.java:23)
at org.powermock.api.mockito.internal.mockmaker.PowerMockMaker.createMock(PowerMockMaker.java:43)
at org.mockito.internal.util.MockUtil.createMock(MockUtil.java:33)
at org.mockito.internal.MockitoCore.mock(MockitoCore.java:59)
at org.mockito.Mockito.mock(Mockito.java:1285)
at org.mockito.internal.configuration.MockAnnotationProcessor.process(MockAnnotationProcessor.java:33)
at org.mockito.internal.configuration.MockAnnotationProcessor.process(MockAnnotationProcessor.java:16)
at org.mockito.internal.configuration.DefaultAnnotationEngine.createMockFor(DefaultAnnotationEngine.java:43)
at org.mockito.internal.configuration.DefaultAnnotationEngine.process(DefaultAnnotationEngine.java:66)
at org.mockito.internal.configuration.InjectingAnnotationEngine.processIndependentAnnotations(InjectingAnnotationEngine.java:71)
at org.mockito.internal.configuration.InjectingAnnotationEngine.process(InjectingAnnotationEngine.java:55)
at org.mockito.MockitoAnnotations.initMocks(MockitoAnnotations.java:108)
at org.mockito.internal.runners.JUnit45AndHigherRunnerImpl$1.withBefores(JUnit45AndHigherRunnerImpl.java:27)
at org.junit.runners.BlockJUnit4ClassRunner.methodBlock(BlockJUnit4ClassRunner.java:254)
at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:70)
at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:50) …
Run Code Online (Sandbox Code Playgroud)

java junit mockrunner mockito spring-tool-suite

5
推荐指数
1
解决办法
8747
查看次数

如何在 Spring Boot 中对 JMS 侦听器进行单元测试?

我想为由@JmsListener. 但我不知道该怎么做。任何人请帮助我。

activemq-classic jms mockrunner spring-jms

5
推荐指数
0
解决办法
8124
查看次数