教你3招,写出甩同事3条街的HTML测试报告

本文介绍三种在Jenkins中展示漂亮测试报告的方法,包括临时设置、修改配置文件及使用插件,帮助提升测试报告的展示效果。

众所周知,测试报告直接关系着你的工作产出跟领导关注重点。就跟年末汇报PPT一样,不仅要准确真实,而且还要好看,今天就教大家三招做出好看又好用的测试报告出来。

前 言

jenkins 中在展示测试报告的时候很不友好,测试报告样式会丢失,如何展示漂亮的测试报告呢?今天我们就来解决这个问题,手把手教你3 种方式。

一、jenkins 中展示测试报告效果

二、实现方式一:临时解决(jenkins 重启后失效)

jenkins 首页--->ManageJenkins--->Tools and Actions 标题下--->Script Console

粘贴脚本输入框中:System.setProperty("hudson.model.DirectoryBrowserSupport.CSP","")

点右下角的 RUN 按钮执行

重新构建项目即可展示 HTML 测试报告

三、实现方式二:修改 jenkins 配置文件

jenkins 安装目录下找到 jenkins.xml 文件

找到 arguments 标签替换前半部分即可

重启 jenkins 生效

替换前:
<arguments>-Xrs -Xmx256m -Dhudson.lifecycle=hudson.lifecycle.WindowsServiceLifecycle -jar "Dmermaid 
替换后:
<arguments>-Xrs -Xmx256m -Dhudson.model.DirectoryBrowserSupport.CSP= -Dhudson.lifecycle=hudson.lifecycle.WindowsServiceLifecycle -jar "D:\ProgramFiles\jenkins\jenkins.war" --httpPort=8080 --webroot="%LocalAppData%\Jenkins\war"</arguments>

四、实现方式三:通过 jenkins 插件实现

  1. 安装插件 Startup Trigger: 可实现在 Jenkins 节点(master/slave)启动时触发构建
  2. 安装插件 Groovy plugin: 可实现直接执行 Groovy 代码
  3. 来到任务配置页面在“构建触发器(Build Triggers)”模块,选择“Buildwhen job nodes start”选项
  4. 在“构建(Build)”模块,选择“Execute system Groovy script”,执行如下 Groovy 命令:System.setProperty("hudson.model.DirectoryBrowserSupport.CSP","")
  5. 保存配置,重新构建生效

五、福利

为广大测试人精心准备了一份400页面试题PDF高清文档,包含了1测试理论,2Linux 基础,3MySQL基础,4Web测试,5接口测试,6App测试,7管理工具,8Python 基础,9Selenium 相关,10性能测试,11LordRunner相关,12计算机网络,13组成原理,14数据结构与算法,15逻辑颗,16人力资源。

有需要的朋友可以点击下面链接即可免费领取哟

400页软件测试面试精选题

<think>我们正在处理用户的问题:如何在IntelliJ IDEA中将Java项目打包为可部署的API接口供团队协作调用。 根据之前的对话历史,用户之前询问了端口占用检查的方法,但当前问题与此无关。当前问题聚焦于Java项目打包为API。 用户提供的引用[1]是关于PredictionIO与IDE集成支持的内容,其中提到了IntelliJ IDEA的代码补全功能,但该引用与当前问题关联不大。 因此,我们忽略引用[1]的内容,直接针对用户的问题进行回答。 用户需求:将写好的IntelliJ IDEA Java项目封装为API供同事协作使用。这意味着需要将项目打包成可部署的形式(例如JAR或WAR),并部署到服务器上,然后通过API接口供团队调用。 解决方案步骤: 1. 确保项目是Web项目(如使用Spring Boot等框架),或者将其转换为Web项目(如果目前不是)。 2. 使用构建工具(如Maven或Gradle)进行打包。 3. 在IntelliJ IDEA中配置打包选项并执行打包。 4. 部署打包后的文件(如JAR或WAR)到服务器(如Tomcat或直接运行Spring Boot的JAR)。 5. 提供API文档(如Swagger)以便同事了解如何调用。 详细步骤: 步骤1:项目准备 - 如果项目不是Web项目,需要添加Web框架支持(如Spring Boot)。 - 创建RESTful API控制器(Controller)类,定义API端点。 步骤2:配置构建工具(以Maven为例) - 在pom.xml中配置打包方式(如jar或war)。 - 对于Spring Boot项目,使用spring-boot-maven-plugin插件。 步骤3:在IntelliJ IDEA中打包 - 打开Maven工具窗口(通常在右侧边栏)。 - 选择Lifecycle -> package,双击执行打包。 - 打包后的文件在target目录下。 步骤4:部署运行 - 如果是Spring Boot的JAR,可以直接运行:`java -jar your-project.jar` - 如果是WAR包,需要部署到Tomcat等Servlet容器。 步骤5:生成API文档 - 使用Swagger(OpenAPI)生成API文档,在代码中添加注解(如@ApiOperation, @ApiParam等)。 - 访问Swagger UI页面(如http://localhost:8080/swagger-ui.html)查看API文档。 示例代码片段(Spring Boot控制器): ```java @RestController @RequestMapping("/api") public class MyApiController { @GetMapping("/hello") public String sayHello(@RequestParam(value = "name", defaultValue = "World") String name) { return "Hello " + name + "!"; } } ``` 示例pom.xml配置(Spring Boot): ```xml <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> </plugins> </build> ``` 步骤6:协作调用 - 将部署的API地址(如http://your-server:8080/api/hello?name=Team)分享给同事。 - 提供Swagger文档链接,同事可以在线查看和测试API。 注意事项: - 确保服务器端口(如8080)开放且未被占用(参考之前端口检查方法)。 - 如果部署在云服务器,需配置安全组允许对应端口。 相关问题: 1. 如何将非Web的Java项目转换为Spring Boot项目? 2. 如何配置Maven多模块项目的打包? 3. 如何为API接口添加认证机制(如JWT)? 4. 如何将API部署到云服务器(如AWS、阿里云)? 根据用户需求,我们提供了从项目准备到部署调用的完整流程,并给出了示例代码和配置。</think>### 在IntelliJ IDEA中将Java项目打包为可部署API接口的完整指南 #### 📦 步骤1:配置项目为可部署结构 1. **添加Web框架支持** - 右键项目 → `Add Framework Support` → 选择`Spring Boot`或`Jakarta EE` - 若使用RESTful API,推荐添加Spring Boot依赖: ```xml <!-- pom.xml示例 --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> ``` 2. **创建API控制器** ```java @RestController @RequestMapping("/api") public class ApiController { @GetMapping("/data") public ResponseEntity<String> getData() { return ResponseEntity.ok("API响应数据"); } } ``` #### 🛠 步骤2:配置打包插件(Maven/Gradle) **Maven配置(pom.xml)**: ```xml <build> <plugins> <!-- 打包可执行JAR --> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> <!-- 包含依赖 --> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-assembly-plugin</artifactId> <configuration> <descriptorRefs>jar-with-dependencies</descriptorRefs> </configuration> </plugin> </plugins> </build> ``` **Gradle配置(build.gradle)**: ```groovy plugins { id &#39;org.springframework.boot&#39; version &#39;3.1.0&#39; } bootJar { archiveFileName = "api-service.jar" } ``` #### ⚙️ 步骤3:在IDEA中执行打包 1. 打开Maven/Gradle工具窗口(右侧边栏) 2. 执行打包命令: - **Maven**: `Lifecycle` → `package`(生成target/*.jar) - **Gradle**: `Tasks` → `build` → `bootJar` 3. 查看输出位置: ```bash # Maven输出路径 target/your-project-1.0.jar # Gradle输出路径 build/libs/api-service.jar ``` #### 🚀 步骤4:部署与团队协作 1. **本地运行测试**: ```bash java -jar your-project-1.0.jar ``` 访问 `http://localhost:8080/api/data` 2. **部署到服务器**: - 上传JAR到云服务器(AWS/阿里云) - 使用nohup后台运行: ```bash nohup java -jar api-service.jar > log.txt & ``` 3. **团队协作配置**: - 创建Docker镜像(推荐): ```dockerfile FROM openjdk:17 COPY target/*.jar app.jar EXPOSE 8080 ENTRYPOINT ["java","-jar","/app.jar"] ``` - 生成API文档(Swagger集成): ```java @OpenAPIDefinition(info = @Info(title = "团队API文档")) public class OpenApiConfig {} ``` #### 🔍 验证API部署 ```mermaid sequenceDiagram 团队成员->>+API服务器: HTTP GET /api/data API服务器->>+业务逻辑: 处理请求 业务逻辑-->>-API服务器: 返回数据 API服务器-->>-团队成员: JSON响应(200 OK) ``` #### 📌 关键注意事项 1. **端口冲突处理** 修改`application.properties`避免端口占用: ```properties server.port=8090 # 使用前文方法检查端口可用性 ``` 2. **环境变量配置** 使用`@Value`注入不同环境配置: ```java @Value("${api.endpoint}") private String endpoint; ``` 3. **API版本控制** 在路径中加入版本号: ```java @RequestMapping("/v1/api/data") ``` --- ### 相关问题 1. 如何为Java API接口添加JWT身份验证? 2. Spring Boot项目如何连接MySQL数据库? 3. 如何用Jenkins实现API的自动化部署? 4. 微服务架构下API网关如何配置? 5. 如何用Swagger生成可交互的API文档?[^1] [^1]: IntelliJ IDEA的框架集成能力可显著简化API开发流程,如自动生成RESTful代码模板和依赖管理。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值