Intellij IDEA run coverage之覆盖率测试

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Intellij IDEA run coverage之覆盖率测试相关的知识,希望对你有一定的参考价值。

参考技术A 如图所示在文件夹上点击Run Test 便可以在右边的框里看到Coverage 的结果,包括每个类的覆盖率。

idea更强大的地方可以看到哪一行是否覆盖,如图所示绿色部分表示已经覆盖的地方,红色部分表示单元测试还没有覆盖的行。

甚至,你还可以将单元测试报告导出成html

通过 Spring Boot Run 但不是通过 IntelliJ Idea 运行的应用程序

【中文标题】通过 Spring Boot Run 但不是通过 IntelliJ Idea 运行的应用程序【英文标题】:Application Running via Spring Boot Run but not via IntelliJ Idea 【发布时间】:2021-12-11 10:43:35 【问题描述】:

当我通过命令行运行我的 Spring Boot 应用程序时,我遇到了这个问题

mvn spring-boot:run -Dspring-boot.run.jvmArguments="-Dspring.profiles.active=dev -Dserver.port=8083"

这工作正常,但在 intellij 中作为应用程序运行时出现以下错误 -


Application run failed,
exc.stack=org.springframework.context.ApplicationContextException: 
Unable to start web server; nested exception is org.springframework.context.ApplicationContextException:

Unable to start ServletWebServerApplicationContext due to missing ServletWebServerFactory bean.\n\tat org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.onRefresh(ServletWebServerApplicationContext.java:155)
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:543)
at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:140)
at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:742)
at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:389)\n\tat org.springframework.boot.SpringApplication.run(SpringApplication.java:311)

可能的原因是什么,我应该在哪里查看配置修复?

关于这个模式还有其他问题,但都没有提到错误-

Spring Boot application runs fine via Maven but not via IDE Intellij IDEA

ApplicationContextException: Unable to start ServletWebServerApplicationContext due to missing ServletWebServerFactory bean (对于缺少 servlet bean,但如果是这种情况,那么应用程序也不应该通过命令行启动)

所以,我在那里找不到任何答案。

【问题讨论】:

你检查过这个帖子吗? ***.com/questions/50231736 好像类似 @KonstantinAnnikov 是的,我也附上了这个有问题的链接。 【参考方案1】:

当您将 Tomcat 的依赖范围设置为“已提供”时,可能会发生此错误,但在运行应用程序时,您没有选择“包含具有提供范围的依赖项”选项。

您可以在应用的运行配置下选择该选项。

在某些旧版本的 IntelliJ 中,您可能会看到一个启用相同功能的复选框。

【讨论】:

以上是关于Intellij IDEA run coverage之覆盖率测试的主要内容,如果未能解决你的问题,请参考以下文章

Intellij IDEA Run Dashboard面板

Intellij IDEA 14 grails run-app 错误

通过 Spring Boot Run 但不是通过 IntelliJ Idea 运行的应用程序

Intellij idea的tomcat配置

intellij idea搭建springboot

intellij idea更新gradle项目报错:Could not run build action using Gradle distribution