当前位置: 首页 > 知识库问答 >
问题:

如何显示使用JUnit运行Spring Test MVC测试的完整stacktraces

白刚洁
2023-03-14

当运行JUnit测试时发生异常(测试范围之外的意外异常)时,不会打印stacktrace。只有异常消息是。例如,我将使用JUnit的单元测试添加到现有的Spring MVC项目中。我有一个类似这样的空测试:

@RunWith(SpringJUnit4ClassRunner.class)
@WebAppConfiguration
@ContextConfiguration("file:src/main/webapp/WEB-INF/my-servlet.xml")
public class UserAccessTest {

    @Autowired
    private WebApplicationContext webApplicationContext;

    @Test
    public void test01() {}
}

但它失败了,消息是:

Tests in error: 
  test01(com.myproject.UserAccessTest): Failed to load ApplicationContext

但是,它不会打印整个堆栈跟踪,包括根本原因等。另一个例子是当我在使用Mockito时忘记模拟某些对象时,会出现NullPointerException。在这种情况下,它甚至不会给出消息,直到在测试中添加try-catch块后,我才发现它是NullPointerException,然后直到添加代码手动打印catch中的所有StackTraceElements时,我才发现它在哪里!

在测试期间发生异常时,是否可以打印整个stacktrace?

我正在使用Maven和IntelliJ idea。但我不确定这是否是我必须在其中任何一个中配置的东西。我找到了这个有点相关的答案,但是1)它涉及构建服务器上的Ant,2)我不知道如果它适用于我,我必须把这个配置放在哪里,因为答案中没有提到这一点。

共有1个答案

黎奇略
2023-03-14

有一些surefile插件设置(例如maven-surefire-pluginusefile参数设置为false)来控制这一点,请参考以下内容

 类似资料:
  • 问题内容: 目前,我有以下 build.gradle 文件: 这 的build.gradle 文件是我的仓库 在这里 。我所有的主文件都在 src / model /中 ,它们各自的测试在 test / model中 。 如何正确添加JUnit 4 依赖项 ,然后在 测试/模型 文件夹中运行那些测试? 问题答案: 如何正确添加junit 4依赖关系? 假设您要针对标准Maven(或等效版本)存储库

  • 当前我有以下build.gradle文件: 此build.gradle文件用于我的存储库。我的所有主文件都在src/model/中,它们各自的测试都在test/model中。

  • 我有一个混合的Java/Scala项目,包含JUnit和ScalaTest测试。使用scalatest插件,Gradle在中运行scalatest测试,但忽略中的JUnit测试。没有插件,Gradle运行JUnit测试,但忽略Scala。我错过了什么把戏? 我的: ETA:我知道有可能对Scala测试进行注释,以迫使它们与JUnit测试运行器一起运行。我正在寻找一个一站式的解决方案,它不需要编辑每

  • 我想为詹金斯创建一个简单的硒项目。当我用Runner.java运行测试时,输出显示0种情况。当我用mvn运行我的测试时,e.g.mvn干净的验证-Dcucumber.options="--tags@烟雾"输出显示我构建成功 我所有的类都在src/test/java/package中 Runner:src/test/java/Runner/Runner。JAVA 胶水:src/test/java/胶

  • 从很久以前的某个版本开始(大约是1.b.35版),Nutz 就偷偷的加入了 maven 的 pom.xml 文件, 极好的解决了测试时需要依赖其他 jar 包的问题,接下来就让我们使用 Maven 来进行 JUnit 测试吧。 Nutz 在 Github 的 地址为 https://github.com/nutzam/nutz(Git@OSC镜像 https://git.oschina.net/n