首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >在Maven测试阶段结束时执行代码的推荐方法是什么?

在Maven测试阶段结束时执行代码的推荐方法是什么?
EN

Stack Overflow用户
提问于 2016-03-31 11:57:14
回答 1查看 421关注 0票数 1

我有一些JUnit测试,它们在test阶段并行执行,每个测试输出一个.json文件,我想调用一个定制的.json方法,在所有测试完成后对这些文件进行一些聚合和后处理。

integration-test阶段之后是默认Maven生命周期中的post-integration-test阶段,但是测试阶段之后没有post-test阶段,为此我不想滥用其他阶段。

问题:在test阶段结束时对结果进行后处理的推荐方法是什么?

EN

回答 1

Stack Overflow用户

发布于 2016-04-02 12:56:34

正如在另一篇这样的文章中所描述的那样,Maven中没有post-test阶段是有原因的(主要是单元测试就是单元测试)。

但是,在您的情况下,您不需要创建额外的Maven插件,这可能解决了这个问题,但也在维护、测试、共享方面增加了额外的复杂性。

由于Java方法中已经有了所需的代码--正如问题中提到的--使用Exec插件及其java目标可能更有意义。

因此,您可以简单地添加到POM中:

代码语言:javascript
运行
AI代码解释
复制
<plugin>
    <groupId>org.codehaus.mojo</groupId>
    <artifactId>exec-maven-plugin</artifactId>
    <version>1.1.1</version>
    <executions>
        <execution>
            <phase>test</phase> <!-- executed as post-test, that is, after Surefire default execution -->
            <goals>
                <goal>java</goal>
            </goals>
            <configuration>
                <mainClass>com.sample.JsonFileAggregator</mainClass> <!-- your existing Java code, wrapped in a main -->
                <arguments>
                    <argument>${project.build.directory}</argument> <!-- directory from where to load json files -->
                </arguments>
                <classpathScope>test</classpathScope> <!-- if your Java code is in test scope -->
            </configuration>
        </execution>
    </executions>
</plugin>

也就是说,将其执行绑定到test阶段,Maven将在任何默认绑定之后(因此在默认的Maven强制执行之后)执行它,并以post-test的形式执行。

然后,可以通过巧尽心思构建的Java (如果不存在的话)调用现有的Java代码,并可能将参数传递给它(例如,从哪里加载.json文件的目录,在上面的片段中,通过其标准属性${project.build.directory}target文件夹)。此外,正如片段中提到的,您的test代码可能位于src/test/java作用域(即src/test/java下),因此,为了使其可见,您还需要相应地配置classpathScope

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36342574

复制
相关文章
工作角色与家庭角色冲突
2020 年的工作正式开启,大多数开发者的开工方式是云办公。对开发者来说,云办公意味着什么?如何开始云办公?云办公的发展趋势会怎样?基于此,云加社区联手知乎科技,从知乎云办公相关话题中精选内容落地社区专题「 开发者云办公模式洞察 」。
腾讯云开发者社区
2020/03/20
1.3K0
Rails里应用Devise
Use Devise For Authentication Devise is great gem for authentication, check out here. Add Gem First thing you need to do is to add devise gem to you Gemfile. Just add gem 'devise', '~> 3.5' to your Gemfile and run bundle install and restart your server. Se
用户2183996
2018/06/28
3500
MySQL管理——激活角色
MySQL8.0提供了角色功能,用户需要在激活角色后才能够使用角色赋予的权限。角色可以在服务器、用户和会话三个级别进行激活。用户仅能激活已被授予的角色
MySQLSE
2023/08/31
5240
MySQL管理——激活角色
OpenShift-角色管理
集群级别Role(Cluster Role) admin:可管理除了项目quota外其它所有项目包括的资源对象。 basic-user:可以获得项目和用户的基本信息。 cluster-admin:可以对任何项目进行任何操作。 cluster-status:可以获得集群状态信息的角色。 edit:除了Role和Binding外,可以修改项目中其它对象。 self-provisioner:可以创建属于自己的项目。 view:不能对项目中的对象进行任何更改,但是可以查看项目中的对象 oc get c
heidsoft
2021/08/26
7650
OpenShift-角色管理
为什么游戏角色没有胡子?
点击标题下「大数据文摘」可快捷关注 福布斯中文网授权转载 本文作者JV Chamary是生物学家和作家。 译 于波 校 李其奇 摘自:福布斯中文网(微信公号: forbeschinaonline) 很多角色扮演游戏都允许玩家定制游戏人物的面部特征,由《光晕》(Halo)这款游戏的创造者开发的新款“共享世界射击游戏”也不例外。 在选择种族(人类、觉醒者或Exo机械族)后,你可以调整包括脸型、发型、眼睛颜色和肤色在内的所有面部特征,创造出独一无二的游戏人物。只不过缺少了一样东西:胡子。 从《命运》的Beta测试
大数据文摘
2018/05/22
9880
【学生管理系统】权限管理之角色管理
   @PostMapping("/addPerm")    public BaseResult addPermWithRoleId(@RequestBody SysRole sysRole) {        try {            // 添加权限            sysRolePermissionService.addPermWithRoleId(sysRole); ​            // 提示            return BaseResult.ok("授权成功");       } catch (Exception e) {            return BaseResult.error("授权失败");       } ​   }
陶然同学
2023/02/24
1.9K0
【学生管理系统】权限管理之角色管理
MySQL8.0 角色管理
官方文档的第一句话,就开门见山的告诉了我们角色是什么东西。A MySQL role is a named collection of privileges. Like user accounts, roles can have privileges granted to and revoked from them.
AsiaYe
2021/11/25
1.6K0
造轮子之角色管理
在asp.net core identity中已经有RoleManager,我们只需要封装一下API操作Role即可完成我们角色管理相关功能,这里API打算只提供分页查询,创建以及删除,不提供修改API。
饭勺oO
2023/10/18
1610
Oracle 用户、角色管理简介
3)DEFAULT TABLESPACE testtbs001:指定在用户方案(schema)中创建的对象的默认表空间为testtbs001
授客
2019/09/11
1.2K0
Grafana -- 用户角色管理(三)
在日常 Grafana 使用中需要针对不同用户开放不同的 dashboard 权限,根据不同角色进行权限管理。Grafana 角色大致分为以下三类:
Kevin song
2020/11/06
5.6K0
那些数据工作中的角色
数据工作中有一类非常重要的角色,那就是数据分析师。为什么这个角色这么重要呢?因为要是没有这个角色,不管一个企业中的数据管理做得有多么好都没用,都无法带来实际的价值。这些数据就像是藏在海底的石油,而数据分析师就是开采海底石油的油井设备。要想让石油用于汽车轮船,需要通过这些设备先将海底的石油抽取出来,经过加工处理,提纯。
ThoughtWorks
2021/07/02
4780
PostgreSQL用户角色和权限管理
4、任何属于该组角色的对象都必须先被删除或者将对象的所有者赋予其它角色,任何赋予该组角色的权限也都必须被撤消。
数据和云
2022/02/25
4.8K0
PostgreSQL用户角色和权限管理
MySQL 8.0用户和角色管理
MySQL8.0新加了很多功能,其中在用户管理中增加了角色的管理,默认的密码加密方式也做了调整,由之前的sha1改为了sha2,同时加上5.7的禁用用户和用户过期的设置,这样方面用户的管理和权限的管理,也增加了用户的安全性。
田帅萌
2018/08/14
2.9K0
MySQL 8.0用户和角色管理
SQLServer 服务器角色管理
常用的为:db_datareader(查权限)db_datawriter(增删改权限)db_owner(完全权限)
李郑
2019/12/04
3.1K0
基于Python-Flask的权限管理:角色管理
一、前言 角色管理主要管理角色信息,不同的角色可以访问不同的菜单和数据。 image 二、后端实现 1.ORM类 from db import db from models.BaseModel imp
Python之道
2020/06/02
4K1
基于Python-Flask的权限管理:角色管理
POJ 1936 All in All
You have devised a new encryption technique which encodes a message by inserting between its characters randomly generated strings in a clever way. Because of pending patent issues we will not discuss in detail how the strings are generated and inserted into the original message. To validate your method, however, it is necessary to write a program that checks if the message is really encoded in the final string.
谙忆
2021/01/19
3920
​MySQL8.0角色管理---(三)
类似将角色授予账户一样,我们可以使用revoke的方法从账户中撤销角色,下面我们演示从账号yeyz_ro中撤销角色role_ro角色:
AsiaYe
2020/02/25
7030
MongoDB运维与开发(五)---角色管理
之前的两篇文章,我们已经讲清楚了MongoDB的用户权限管理,接下来的文章我们来看MongoDB的角色管理。
AsiaYe
2020/11/10
9010
MongoDB运维与开发(五)---角色管理
MySQL8.0角色管理---(一)
今天看了看MySQL8.0官方文档的角色管理部分,写点东西总结下这块的内容吧。
AsiaYe
2020/02/25
5870
技术转管理(一):角色的转变认知
祝大家国庆假期节日快乐哈。因厦门疫情比较严重,今年国庆就乖乖的宅家里啦,今天和大家聊一聊程序员如何转型做管理。
用户7533190
2022/09/22
8550
技术转管理(一):角色的转变认知

相似问题

Cakephp 403错误不显示自定义页面

12

根据标题类型显示内容

11

自定义错误页面内容未正确显示

20

根据索引页面上的内容类型自定义节点的内容块

20

显示内容自定义页面

10
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文