Maven项目管理实战(六)--完成单元测试

MSVS C# Matlab的混合编程系列2 - 构建一个复杂(含多个M文件)的动态库: 本节我们尝试将一个有很多函数和文件的Matlab算法文件集成到C#的项目里面。 阅读详情

JUnit是单元测试事实上的标准,所以我们这里仅介绍如何在Maven中使用JUnit进行单元测试。


1. 工程配置

1.1 pom.xml

为了实现单元测试,需要引入JUnit的Dependency:

		<dependency>
			<groupId>junit</groupId>
			<artifactId>junit</artifactId>
			<version>${junit.version}</version>
			<scope>test</scope>
		</dependency>

另外,Maven中有一个Plugin是用来支持单元测试的,这个Plugin是maven-surefire-plugin,我们在project段中增加:

	<build>
		<pluginManagement>
			<plugins>
				<plugin>
					<groupId>org.apache.maven.plugins</groupId>
					<artifactId>maven-surefire-plugin</artifactId>
					<version>${maven-surefire-plugin.version}</version>
					<configuration>
						<includes>
							<include>**/*.java</include>
						</includes>
						<excludes>
							<exclude>**/AppTest.java</exclude>
						</excludes>
					</configuration>
				</plugin>
			</plugins>
		</pluginManagement>
	</build>

注意其中的configuration中定义了测试哪些类和不测试哪些类。


1.2 运行

配置完成后可以使用如下命令开始进行测试:

mvn test

或者你本次不想进行任何测试,那么可以使用:

	<build>
		<pluginManagement>
			<plugins>
				<plugin>
					<groupId>org.apache.maven.plugins</groupId>
					<artifactId>maven-surefire-plugin</artifactId>
					<version>${maven-surefire-plugin.version}</version>
					<configuration>
						<skip>true</skip>
					</configuration>
				</plugin>
			</plugins>
		</pluginManagement>
	</build>

甚至你都不想编译测试代码,可以使用:

	<build>
		<pluginManagement>
			<plugins>
				<plugin>
					<groupId>org.apache.maven.plugin</groupId>
					<artifactId>maven-compiler-plugin</artifactId>
					<version>${maven-compiler-plugin.version}</version>
					<configuration>
						<skip>true</skip>
					</configuration>
				</plugin>
				<plugin>
					<groupId>org.apache.maven.plugins</groupId>
					<artifactId>maven-surefire-plugin</artifactId>
					<version>${maven-surefire-plugin.version}</version>
					<configuration>
						<skip>true</skip>
					</configuration>
				</plugin>
			</plugins>
		</pluginManagement>
	</build>


1.2 查看测试结果

surefire生成的测试结果位于:target\surefire-reports目录,一个文本形式比较简单,另一个xml格式的详细记录了测试信息。


1.3 查看覆盖率报告结果

有时我们期望能拿到覆盖率报告,可以确认是否所有代码都是经测试的,所以我们需要另一个plugin: cobertura:

				<plugin>
					<groupId>org.codehaus.mojo</groupId>
					<artifactId>cobertura-maven-plugin</artifactId>
					<version>${cobertura-maven-plugin.version}</version>
					<configuration>
						<formats>
							<format>xml</format>
							<format>html</format>
						</formats>
					</configuration>
					<executions>
						<execution>
							<goals>
								<goal>clean</goal>
								<goal>check</goal>
							</goals>
						</execution>
					</executions>
				</plugin>


运行命令即可查看结果:

mvn cobertura:cobertura
结果保存在arget\site\cobertura目录。







【Matlab】如何使用Simulink进行电池建模和SOC预估 “通过Simulink电池建模进行SOC预估,其实挺容易!” 1 声明 本文只描述一般性电池建模方法,文中出现的电池相关数据来自一些论文或者外文文献,对数据的真实性不做任何保证。 本文参考了不少国内高校的硕士论文和外文文献,所以本篇文章只作为学术性交流,未经... 阅读详情

相关推荐

用STM32定时器PWM高级功能驱动步进电机:F103C8T6+TB6600实战教程

本文详细介绍了如何利用STM32F103C8T6微控制器的定时器PWM高级功能驱动TB6600步进电机驱动器,实现高效、灵活的运动控制方案。通过硬件配置、PWM参数计算、运动控制算法及TB6600高级功能应用的全面解析,为工业自动化和精密控制领域提供了实用的技术参考。

game4的博客 186

【Maven教程】(九):使用 Maven 进行测试——动态指定要运行的测试用例、包含与排除测试用例、测试报告、运行TestNG测试、重用测试代码 ~

本文的主题是Maven与测试的集成,不过在讲述具体的测试技巧之前先实现了背景案例的account-captcha模块,这一模块的测试代码也成了本章其他内容良好的素材。maven-surefire-plugin是Maven背后真正执行测试的插件,它有一组默认的文件名模式来匹配并自动运行测试类。用户还可以使用该插件来跳过测试、动态执行测试类、包含或排除测试等。maven-surefire-plugin能生成基本的测试报告,除此之外还能使用cobertura-maven-plugin生成测试覆盖率报告。

Technology changes the world of life 3053

OpenWrt虚拟机磁盘扩容实战:从SquashFS到ext4的完整避坑指南

本文详细介绍了OpenWrt虚拟机磁盘扩容的完整流程,重点对比了SquashFS和ext4文件系统在扩容操作上的关键差异。通过五步安全迁移法和直接分区调整方案,帮助用户有效解决磁盘空间不足问题,同时提供高级技巧和故障排除指南,确保扩容过程顺利无坑。

weixin_29251131的博客 230

Maven 单元测试

Maven 单元测试

青年有志 3273

FairyGUI编辑器自定义菜单扩展插件

本文涉及到的软件有:FairyGUI,VSCode代码环境涉及到了:LuaVSCode插件:EmmyLua在编写FairyGUI编辑器菜单前,了解一下FairyGUIEditor的API会有效的帮助我们解决很多问题。FairyGUI的扩展是通过编辑器自带的插件功能实现的,插件中我使用的是lua环境模板。导入编辑器的LuaAPI,文件可以在FairyGUI-Editor源码的插件目录中找到。接下来将通过功能来说明对应的API作用。

Aili_Xiao的博客 4497

LAMMPS GCMC模拟保姆级教程:从fix gcmc命令到吸附等温线实战

本文提供LAMMPS GCMC模拟的详细教程,从fix gcmc命令设置到吸附等温线实战,涵盖巨正则蒙特卡洛模拟的全流程。通过MOF-5吸附甲烷的案例,指导用户构建模拟体系、转换化学势与压力、定义GCMC区域,并绘制出版级吸附等温线,助力材料科学研究。

weixin_33724046的博客 603

Maven pom.xml文件中build,plugin标签的具体使用

例如,`maven-compiler-plugin` 插件的 `compile` 目标与 Maven 构建的 `compile` 阶段绑定,因此在执行 `mvn compile` 命令时,编译代码的目标会自动执行。在 `` 标签内还可以使用其他构建相关的配置,例如使用 `` 标签声明项目构建时要使用的 Maven 扩展,或使用 `` 标签指定默认的构建目标等。目标是插件的执行单元,通过在插件配置中指定目标,可以按需执行插件的不同功能。

goTsHgo的博客 1万+

基于卷积神经网络的遥感图像地物分类

AI:89-基于卷积神经网络的遥感图像地物分类 基于卷积神经网络的遥感图像地物分类是一个令人兴奋的领域,它在环境监测、城市规划、农业、国防等领域具有广泛的应用。深度学习技术为我们提供了更准确、高效的工具,有望在未来进一步提高分类性能。在本文中,我们探讨了卷积神经网络的工作原理、数据准备、模型构建、训练和评估过程,并提供了多个代码示例。此外,我们讨论了地物分类的应用和挑战,以及未来的发展趋势。

一键难忘的博客 2717

maven 关于测试的配置

一、build设置 主要用于编译设置,一般包含两种标签:resource和plugins,前者用于排除或包含某些资源文件,后者用于设置插件。 1、例如:在用junit4写测试程序,用到了@Test 等注解,但是由于maven的核心插件之一compiler插件默认只支持编译java1.3,因此需要配置该插件使其支持java6,需要修改pom文件如下:

sjzzhanglisha的专栏 1193

防护装备穿戴检查:基于YOLOv8与UI界面的深度学习应用

通过结合YOLOv8模型与UI界面,本系统实现了防护装备穿戴检查的自动化。该系统能够快速识别工作人员是否正确佩戴了所需的防护装备,帮助提高安全管理水平。未来,随着技术的发展,防护装备穿戴检查系统将在更多领域得到应用,如工业现场、建筑工地等,实现更加精确和高效的实时监控。

YOLO 354

在Android Jetpack Compose中实现夜间模式

Android基于Compose的深色主题实现

虎哥LoveDroid 1235

idea Maven创建多模块项目(之单元测试)

前面两篇已经创建好子模块,且各自关联起来,接下来进行单元测试在idea中引入单元测试junit非常方便;选中类名右击---&gt;goto----&gt;Test----&gt;create new test;如图:选择需要的junit jar包,如图:点击OK完成,然后maven会自动导入junit包,若没有自动导入,就手动导入,在pom.xml中添加依赖,如图:注意别添加错了pom.xml;若...

青蛙的博客 7441

VTK API 详解(115):vtkScalarBarActor - 显示颜色条

显示用于颜色映射的标量值范围。自动从vtkMapper中提取。可设置颜色条的位置、大小、字体、标签格式等。支持横向或纵向显示颜色条。是进行科学数据伪彩色可视化时非常重要的辅助工具,它能让用户直观地理解不同颜色代表的数值大小。通过灵活设置颜色表、标题、标签数量等,可以适配多种可视化需求。

yumeiguo的博客 488

Maven项目管理

对第三方依赖包的管理,可以连接互联网下载项目所需第三方jar包。对自己开发的模块的管理,可以像引用第三方依赖包一样引用自己项目的依赖包。项目构建:是一个从编写源代码到编译、测试、运行、打包、部署的过程。传统项目和maven项目构建的两种方式传统项目:打开Idea编写源代码和配置文件,对源代码进行编译,可以使用Junit进行单元测试,把项目打成war包,部署到Tomcat服务器中运行。maven项目:maven将项目构建过程进行标准化,每个阶段都可以使用一个命令来完成。

2302_79585857的博客 936

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

项目管理工具maven1

Maven是一个跨平台的Java项目管理工具,主要用于项目构建、依赖管理和项目信息管理。它通过标准化目录结构和构建流程,实现自动化编译、测试、打包和部署。Maven的核心优势包括约定优于配置、生命周期管理和依赖管理(自动下载第三方jar包及管理模块依赖)。安装配置包括设置MAVEN_HOME环境变量和本地仓库路径,通过pom.xml定义项目信息。Maven支持IDE集成,如IDEA创建Java/Web项目,并可通过命令行执行构建命令(compile/test/package等)。其仓库分为本地仓库和远程仓库

qq_73993301的博客 3986

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

maven项目管理

项目管理工具软件Maven项目对象模型(POM),可以通过一小段描述信息来管理项目的构建,报告和文档的项目管理工具软件。maven就是通过一段描述来构建项目,而且==maven可以帮你管理相应的jar的一款软件==。

2401_82454653的博客 739

Maven的安装配置-项目管理工具

Maven的安装配置-项目管理工具(详细教程)

一年,我很需要这一年 2059

Maven 项目管理工具

Maven是Apache开源组织奉献的一个开源项目,可以翻译为“专家”或“内行”。Maven的本质是一个项目管理工具,将项目开发和管理过程抽象成一个项目对象模型(POM project object model),通过简单的配置和命令就可以完成项目的构建管理和依赖管理。使用 Maven 可以实现自动化构建、测试、打包和发布项目,大大提高了开发效率和质量。简要概述:我们使用Idea构建Java项目中,若是要使用Mysql数据库要导包驱动或者其他封装好的包,常见方式是去官网下载JAR文件,导入项目中。

沐硕 1942

项目管理工具Maven

Maven是一个跨平台的Java项目管理工具,主要用于项目构建、依赖管理和项目信息管理。它通过标准化的目录结构和构建生命周期(清理、编译、测试、打包、部署)简化开发流程,支持自动化构建和团队协作。Maven通过pom.xml文件管理项目配置和依赖关系,能够自动下载第三方库并统一管理。相比传统IDE或Ant工具,Maven具有约定优于配置、生命周期管理、依赖管理等特点,显著提升开发效率。本文还介绍了Maven的本地仓库配置、项目创建步骤以及多模块项目的依赖管理实践,帮助开发者快速掌握Maven的核心功能和应用

weixin_62938484的博客 1045

【Maven】一篇带你了解Maven项目管理工具

Maven项目管理工具介绍

weixin_51325964的博客 1082

项目管理工具-Maven

Maven简介 Maven的作用 Maven的概念模型 Maven的仓库 Maven的坐标 Maven安装与配置 配置本地仓库 Maven项目的目录结构 Maven构建项目 Maven管理依赖 1. IDEA创建Maven工程 2.maven的依赖传递 3.maven解决jar包冲突问题

成长,编程,生活 872

项目管理工具 Maven

项目构建:是一个从编写源代码到编译、测试、运行、打包、部署的过程。传统项目和maven项目构建的两种方式传统项目:打开Idea编写源代码和配置文件,对源代码进行编译,可以使用Junit进行单元测试,把项目打成war包,部署到Tomcat服务器中运行。maven项目:maven将项目构建过程进行标准化,每个阶段都可以使用一个命令来完成。清理 --> 编译 --> 测试 --> 报告 --> 打包 --> 部署好处:可以通过命令完成项目构建。

2401_88153531的博客 1047

项目管理与SSM框架——Maven

Maven学习+案例练习 文章目录 一、Maven介绍 1.Maven简介 2.Maven的作用 3.Maven的安装 4.Maven工程的类型和结构 5.Maven项目的生命周期 6.Maven常用命令 7.Maven仓库类型 8.Maven配置文件 二、Maven工程开发 1.IDEA配置Maven插件 2.建构Maven工程 3.pom文件配置 4.Maven依赖范围 三、Maven工程测试 1.测试概述 2.Junit使用步骤 3.Junit结果判定 4.@Before、@After 四、依赖冲突

TIpotencial的博客 536

Maven项目管理工具-初始+环境配置

maven环境配置和基础知识

2301_81453175的博客 1577

项目管理工具——Maven

1、Maven介绍 1.1、什么是Maven Maven在美国是一个口语化的词语,代表专家、内行的意思。一个对Maven比较正式的定义是这么说的:Maven是一个项目管理工具,它包含了一个项目对象模型(POM,Project Object Model),一组标准集合,一个项目生命周期(Project Lifecycle),一个依赖管理系统(Dependency Management System),和用来运行定义在生命周期阶段(phase)中插件(plugin)目标(goal)的逻辑。 1.2、Mav

weixin_44623055的博客 3093
上一篇: Mac下的mysql+hibernate配置下中文问题的解决
下一篇: Java开源框架类库介绍(一)--HttpComponents
Soloman
博客等级 码龄25年 171粉丝 159原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值