Java项目Ubuntu编译后如何测试
在Ubuntu系统中测试Java项目,需先安装JDK与构建工具,添加JUnit5依赖。在src/test/java目录下编写测试类,使用@Test注解标记测试方法,并用断言进行验证。通过执行mvntest或gradletest命令运行测试,查看生成的HTML格式报告。此外,还可进行集成测试以及JMH性能测试。
Ja va项目在Ubuntu上编译后的测试流程
项目编译完了,怎么在Ubuntu上把测试跑通?这事儿看着简单,但步骤一多就容易漏。咱们从头捋一遍,从环境准备到高级测试场景,把每个环节都掰开揉碎。
1. 准备测试环境
在Ubuntu上测试Ja va项目,第一步肯定得把JDK和构建工具装好——Ma ven或Gradle,挑你常用的就行。以Ma ven为例,命令长这样:

sudo apt update
sudo apt install openjdk-11-jdk ma ven
# 推荐使用OpenJDK 11及以上版本
装好之后别急着往下走,先验证一下:
ja va -version
# 检查JDK版本
mvn -v
# 检查Ma ven版本
确保终端里输出的版本号跟你预期的一致——不然到时候跑测试报个“ClassNotFoundException”就尴尬了。
2. 添加测试框架依赖
现在Ja va生态里单元测试基本默认JUnit 5(junit-jupiter)。具体怎么加呢?Ma ven项目在pom.xml的里贴这段:
org.junit.jupiter
junit-jupiter-api
5.9.3
test
org.junit.jupiter
junit-jupiter-engine
5.9.3
test
用Gradle的同学,在build.gradle的dependencies里写:
testImplementation 'org.junit.jupiter:junit-jupiter-api:5.9.3'
testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine:5.9.3'
保存文件之后跑一句mvn install或gradle build,依赖就会自动下载。别小看这一步——很多新手跑到这卡住,其实多半是网络没通或者版本号写错了。
3. 编写测试类
测试类放哪儿?Ma ven和Gradle的默认约定是src/test/ja va,包路径跟主代码一致。举个例子:主代码里有个Calculator.ja va放在src/main/ja va/com/example,那么测试类CalculatorTest.ja va就放在src/test/ja va/com/example。代码长这样:
package com.example;
import org.junit.jupiter.api.Test; // JUnit 5测试注解
import static org.junit.jupiter.api.Assertions.assertEquals; // 断言工具
public class CalculatorTest {
@Test
public void testAdd() {
Calculator calculator = new Calculator();
int result = calculator.add(2, 3);
assertEquals(5, result, "2+3应等于5"); // 断言结果是否符合预期
}
@Test
public void testSubtract() {
Calculator calculator = new Calculator();
int result = calculator.subtract(5, 2);
assertEquals(3, result, "5-2应等于3");
}
}
注意两个关键点:每个测试方法前都加上@Test注解;用assertEquals这类断言工具来验证逻辑——别用System.out.println凑合,那是给人类看的,断言才是给机器看的。
4. 运行测试
运行测试最简单,一行命令搞定:
- Ma ven项目:在项目根目录(有
pom.xml的那一层)执行:mvn test - Gradle项目:同样在根目录执行:
gradle test
构建工具会自动编译测试代码、执行所有@Test注解的方法,然后把结果实时打印在终端——多少个通过、多少个失败、失败原因是什么,一目了然。
5. 查看测试报告
光看控制台输出不够过瘾?构建工具还会生成详细报告:
- Ma ven:报告在
target/surefire-reports目录,打开index.html就能看可视化结果,失败用例还有完整的堆栈跟踪。 - Gradle:报告在
build/reports/tests/test/index.html,同样支持HTML格式,点进去就能直观地看到绿色(通过)和红色(失败)。
这步千万别忽略——尤其是集成环境里,报告是定位问题的第一手资料。
6. 高级测试场景
如果项目不只是简单的单元测试,还有更复杂的需求,那下面这些场景值得关注:
- 集成测试:比如测试数据库连接、多个模块的交互,Spring项目可以用
@SpringBootTest,或者用JUnit 5的@TestMethodOrder控制测试执行顺序——当然,别忘了添加对应的依赖(Spring Test、JUnit 5扩展包)。 - 性能测试:Ja va微基准测试推荐用JMH(Ja va Microbenchmark Harness)。加好JMH依赖之后,通过
mvn clean install就能生成性能测试报告,精准定位热点代码。
到这步,从单元测试到集成测试再到性能测试,Ubuntu上Ja va项目的测试流程就全了。代码质量能不能稳住,关键就看测试覆盖面够不够、跑得对不对。希望这套流程能帮你省掉一些排查bug的弯路。
Windows 10 是一款微软推出的经典操作系统,拥有硬件兼容性与多任务处理能力。它更偏向把系统状态查看和常用调节动作放在一起,适合需要持续观察和微调设备状态的场景。
极度公式是一款跨平台专业LaTeX公式识别编辑软件,支持OCR公式识别和多平台编辑。和使用说明,避免使用,享受完整功能与稳定支持。做扫描整理、文字提取和表格转换时,它能把识别后的处理步骤接得更顺,资料录入这类场景会省下不少时间。
















