Debian-7.1下JBoss Forge + Arquillian + JBoss-as-7.1 测试环境搭建

ubuntu安装jboss NULL 博文链接:https://zhuliang1984723.iteye.com/blog/1142882 立即下载

下载安装Forge

JBoss Forge是一种能够快速创建、开发Java项目的工具,通过它我们可以迅速生成项目骨架,解决库依赖问题,并与Arquillian测试框架集成。Forge有点类似于seam-gen,但其最大的不同之处在于,seam-gen只能在项目创建时一次性成生class,而Forge可以随时动态添加class,field, 依赖库等。我们可以从官网( http://forge.jboss.org/)下载forge,但速度真的非常慢,只有40kb/s。于是我把它上传到了百度云:http://pan.baidu.com/s/1bnzj2Cf

forge安装非常简单,解压tar.gz,配置环境变量$FORGE_HOME为forge安装目录,再将$FROGE_HOME/bin添加到$PATH中即可。

创建项目并添加Arquillian支持

不用forge也行,但要手工修改pom.xml添加很多dependency。forge可以为我们代劳。步骤如下:

运行forge:
forge

启动forge大概需要5s,不知道这么久的时间forge在做什么。。启动成功后应该输出如下提示:



创建项目arquillian-demo,并创建包org.arquillian.example:
new-project --named arquillian-demo --topLevelPackage org.arquillian.example

用forge的beans插件安装CDI支持:
beans setup

创建一个Bean:
beans new-bean --type org.arquillian.example.MySimpleBean --scoped DEPENDENT

回到工程根目录:
cd ~~

为forge安装arquillian插件:
forge install-plugin arquillian

注意,不要通过Arquillian官网的Guide给出的链接下载forge,那个是1.0版,而arquillian插件最低要求为1.3。

以上是arquillian官网给出的步骤,但如果再向下就会出错了,可能是文档没有及时更新。不过我们可以在Forge的官网上找到说明  http://forge.jboss.org/docs/important_plugins/arquillian-testing.html#content。

设置测试容器(这里是JBoss-as-7.1.0):
arquillian setup --containerType MANAGED --containerName JBOSS_AS_MANAGED_7.X

Tip: 输入
arquillian setup --containerType MANAGED --containerName [TAB]

能自动列出arquillian支持的所有容器列表。

此时forge会问我们是否要安装JBoss,我们选择不安装。

修改arquillian.xml文件,内容如下:
<container default="true" qualifier="JBOSS_AS_MANAGED_7.X">
    <configuration>
      <property name="jbossHome">JBOSS安装目录</property>
    </configuration>
  </container>

生成测试Bean

forge可以根据已有的类自动生成对应的测试类:
arquillian create-test --class org.arquillian.example.MySimpleBean.java

这会生成MySimpleBeanTest.java文件:
package org.arquillian.example;

import org.arquillian.example.MySimpleBean;
import javax.inject.Inject;
import org.jboss.arquillian.container.test.api.Deployment;
import org.jboss.arquillian.junit.Arquillian;
import org.jboss.shrinkwrap.api.ShrinkWrap;
import org.jboss.shrinkwrap.api.spec.JavaArchive;
import org.jboss.shrinkwrap.api.asset.EmptyAsset;
import org.junit.Assert;
import org.junit.Test;
import org.junit.runner.RunWith;
import static org.junit.Assert.*;
import static org.hamcrest.core.Is.*;

@RunWith(Arquillian.class)
public class MySimpleBeanTest {
    @Inject private MySimpleBean mysimplebean;

    @Deployment public static JavaArchive createDeployment() {
        return ShrinkWrap.create(JavaArchive.class, "test.jar")
            .addClass(MySimpleBean.class)
            .addAsManifestResource(EmptyAsset.INSTANCE, "beans.xml");
    }

    @Test
    public void testIsDeployed() {
        Assert.assertNotNull(mysimplebean);
    }
}

在JBoss中运行测试

build test --profile arq-jboss_as_managed_7.x

此时forge会启动Jboss,部署由ShrinkWrap生成的jar包,并运行测试。
如果你发现在启动JBoss后过程就停住了,没有任何Result,那么就要检查一下pom.xml,找到最后一个dependency节点,看看version是否为你JBoss对应的版本。
<dependencies>
        <dependency>
          <groupId>org.jboss.as</groupId>
          <artifactId>jboss-as-arquillian-container-managed</artifactId>
          <version>7.1.0.Final</version>
        </dependency>
      </dependencies>

我这里之前居然是7.1.1,导致出现各种奇妙的错误,浪费了不少时间。如果你想先手动启动JBoss,然后让arquillian在远程容器中运行测试的话,那么就要修改arquillian.xml,将allowConnectingToRunningServer设为true:
<container default="true" qualifier="JBOSS_AS_MANAGED_7.X">
    <configuration>
      <property name="jbossHome">/home/whf/app/jboss-as-7.1.1.Final</property>
      <property name="allowConnectingToRunningServer">true</property>
    </configuration>
  </container>



至此测试环境配置完毕,测试成功后的输出结果如下:

YOLO26改进策略【卷积层】| HWD,引入`Haar小波变换`到下采样模块中,减少信息丢失 本文记录的是。传统的卷积神经网络中常用的最大池化平均池化和步长为2的卷积等操作进行下采样可能会导致信息丢失,为了解决信息丢失问题,HWD作者受无损信息变换方法的启发,引入Haar小波变换到下采样模块中, 阅读详情

相关推荐

qt实现程序密钥注册功能,MD5加密+AES加密,并实现一台电脑系统一个密钥

qt实现了一个给自己软件加密的功能。 原理是: 需要被注册的软件第一次运行的时候,在系统的注册表里面注册一个键值,如下: 这个值作为生成密钥的用户识别号,然后生成密钥文件key.db,把这个key.db文件放到软件执行目录下,即可完成软件的注册并正常使用软件。 软件第一次打开的界面及密钥生成工具软件界面如下: 将密钥生成工具软件生成的key.db放到软件执行目录下之后,软件即可正常使用,如下图: 代码使用了MD5加密 外加 AES加密, 解密和加密的核心代码如下: QSt.

weixin_43935474的博客 4127

JBoss Forge NetBeans集成–入门

JBoss Forge是构建基于Maven的Java EE项目的最快方法。 因此,它已经具有了令人敬畏的功能,使您作为开发人员的生活更加轻松。 在大多数情况下,使用Forge的人们可能会对创建Web应用程序感兴趣。 有很多入门Forge基础的方法。 您可以查看quickstart部分或github存储库 。 就在几天前,Forge变得更加出色。 George Gastaldi( @ge...

最佳 Java 编程 220

华为HPLC模组全拆解之电力载波收发原理分析

电力线载波通信(PLC)是一种使用电力线进行数据传输的通信技术,即利用现有电网作为信号的传输介质,使电网在传输电力的同时可以进行数据传输。目前根据所用频段的不同,低压电力线载波通信一般分为窄带电力线载波通信(10KHz~500KHz)和宽带电力线载波通信(2MHz~20MHz)。这里的频率可以简单理解为单片机串口的通信波特率,频率越小通信速度越慢,频率越大通信速度越快。为了研究电力载波通信原理,笔者以华为的一款宽带电力载波模组为例进行详细的分析,该模组主控采用的是海思芯片,型号为Hi3921EV100。

xingxingdiandeng69的博客 2万+

eclipse下使用arquillian对seam项目进行单元测试

版本:   eclipse: 4.2.0   seam: 2.3.0.Final   jboss-as: 7.1.0.Final   当前ftc项目pom.xml中的dependency已经包含了arquiilian依赖,所以不用再从官网上复制大片xml到自己的pom.xml中了。但要想在eclipse中执行单元测试还需要一点点改动:   我们首先...

weixin_33700350的博客 194

STM32单片机入门学习(六)-光敏传感器控制LED

光敏传感模块一DO端接B13,GND接GND,VCC接VCC,AO不接。LED负极接B12,正极接VCC。

指尖魔法师 4368

ZXDoc工业级CAN总线仿真工具全解析与应用实践

CAN总线作为现代工业通信的核心协议,其仿真技术是汽车电子和工业控制领域的关键支撑。通过物理层信号模拟、协议层报文解析和应用层人机交互的三维仿真,开发者能够构建完整的硬件在环测试环境。ZXDoc作为工业级仿真工具,集成了DBC工程化管理、HMI面板设计和自动化测试脚本等核心功能,特别适用于ECU开发、产线验证等场景。工具支持ISO11898标准协议,提供错误帧注入、负载压力测试等高级特性,结合Python API可实现复杂测试用例的自动化执行。在新能源车VCU测试等实践中,通过优化采样点等参数配置,显著提升

weixin_30096975的博客 469

JBoss Forge

java 7 JDK forge 2.12.3 http://forge.jboss.org/document/sample-forge-usage-tasks $ project-new --named example --topLevelPackage org.mycomp.myapp --type war --finalName myExample $ jpa-new-...

iteye_8138的博客 262

innovus:set_clock_latency与insertion_delay

当1ns clock latency设置在capture上,在report_timing报告中体现在other end arrival time以及capture clock path的Arrival Time上。因为-1ns的insertion delay存在,所以skew group报告中显示的Arrival (ns)是减1ns的结果,即1.819-1=0.819 ns。CTS阶段create_ccopt_clock_tree_spec之后,spec中会产生对应的insertion_delay命令。

m0_61544122的博客 1614

Arquillian测试框架快速上手教程 (一) - 环境搭建、容器适配、单元测试

本系列教程共四篇,分别是: 一、 环境搭建、容器适配、单元测试 二、JBoss Forge、ShrinkWrap快速指南 三、使用 Arquillian 进行Java持久化测试 四、使用 Arquillian + Drone + Selenium 进行功能测试(UI测试或Web自动化测试) 其中,Web容器以JBoss为例,工程以maven目录结构为准。 Arquill

停止更新 1万+

BlockUI专栏目录

BlockUI是一个设计NX对话框的工具,是官方推荐使用的对话框制作方法,能够与NX自身风格相统一,并且在实际开发中经常被使用。BlockUI可以帮助用户快速创建NX对话框,支持多种控件类型,如按钮、文本框、标签等。通过使用BlockUI,用户可以轻松地自定义对话框的布局、样式和交互行为。此外,BlockUI还提供了一些高级功能,如动态更新、条件显示和事件处理等,以帮助用户创建更加复杂和灵活的对话框。本专栏讲述了使用BlockUI制作NX对话框的方法,介绍了每个控件的功能,并且分享一些常用操作的源码。

王牌飞行员_里海的博客 1630

TIA西门子博途V19安装教程及注意事项

TIA西门子博途V19安装教程及注意事项

Robot_PLC_HMI_Automation 1万+

如何通过junit测试EJB(Jboss容器)

环境: maven配置文件     xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">     4.0.0     com.ufis_as     EK-PTS-TEST     0.0.1-SNAPSHOT

syouketu的专栏 2293

基于STM32、HAL库的ZMOD4510AI4R气体传感器驱动程序设计

ZMOD4510AI4R是Renesas公司推出的一款数字空气质量传感器,主要用于检测臭氧(O₃)和总挥发性有机化合物(TVOC)浓度。(status & 0x80)) // 检查数据就绪位。// 等待测量完成 (实际应用中应该使用非阻塞方式)// 转换为ppb (简化转换,实际应根据传感器文档校准)* @param hzmod: ZMOD4510句柄。* @param tvoc: TVOC浓度(ppb)* @param ozone: 臭氧浓度(ppb)* @param hi2c: I2C句柄。

corlin6688的博客 311

Windows下JBOSS安装配置图文教程

2019独角兽企业重金招聘Python工程师标准>>> ...

weixin_33962923的博客 639

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

linux下安装jboss

Jboss是Java EE应用服务器(就像Apache是web服务器一样),专门用来运行Java EE程序的。 JBoss的运行需要JAVA环境的支持,所以我们首先安装JDK。   一 安装jdk7 注意:安装jdk8不行,这里安装jdk7. 下载地址:http://www.oracle.com/technetwork/cn/java/javase/downloads/jdk7-do

雅冰石的专栏 1万+

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

开发环境tomcat及测试环境jboss部署下加载配置文件路径的各种方法及问题解决办法

qq_33578832的博客 816

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

java中怎么加测试包_java – 在arquillian测试中使用shrinkWrap在部署jar中添加包

我正在使用arquillian进行单元测试.我正在使用shrinkWrap创建部署jar.但为此我需要添加我的项目中使用的所有包,这些包的数量很多.以下是我的测试文件@RunWith(Arquillian.class)public class GreeterTest {@Deploymentpublic static JavaArchive createDeployment() throws Na...

weixin_42509793的博客 259

Debian下将WildFly作为Service启动

ln -s $JBOSS_HOME/bin/init.d/wildfly-init-debian.sh /etc/init.d/ cp $JBOSS_HOME/bin/init.d/wildfly.conf /etc/default/wildfly然后打开/etc/default/wildfly文件,修改JBOSS_HOME, JAVA_HOME等参数。至此执行service wildfly sta

停止更新 1727

jpa 测试_使用外星人进行测试:如何使用Arquillian测试JPA类型转换器

jpa 测试 该帖子与+ Aslak Knutsen ( @aslakknutsen )一起撰写。 JPA类型转换器为定义实体属性如何持久存储到数据库提供了一种简便的方法。 您可以使用它们来实现许多不同的功能,例如,如上一篇文章中所示:加密数据: 如何使用JPA Type Converter加密数据 。 但是编写类型转换器是不够的。 我们还需要确保其正常运行。 通常,有两种方法可以...

最佳 Java 编程 257

IDEA启动报错Plugin Error Problems found loading plugins的解决办法

标题一、问题发生的原因:C盘磁盘不足,idea启动报IO异常,项目停止运行。我关闭IDEA重新启动,报以下错误: Problems found loading plugins: Plugin &quot;Persistence Frameworks Support&quot; was not loaded: required plugin &quot;Database Tools and SQL&quot; is disable...

只在朝暮间的博客 3208

Arquillian和Jboss的版本问题

在用Arquillian时,JBOSS版本是7.1.1.Final,Arquillian用了7.2.0.Final,服务是可以启起来,但是死活Arquillian不会运行单元测试。 找了半天原因是Arquillian的版本问题,换成7.1.1.Final就可以了。浪费很多时间。。 转载于:https://www.cnblogs.com/lyhtbc/archive/2013/04/17/jbos...

weixin_34309543的博客 176

ShrinkWrap微部署使用心得

最近在maven项目中用Arquillian做单元测试和继承测试,遇到一些小问题,通过看老外的文档算是逐步解决或者绕开了,在此记录一下供以后查阅。 以下是我的感受 1.在基于容器的单元测试中,普通那种Junit测试方法能测的东西实在不多。比如依赖注入,数据库的读写等,如果都通过写Mock来测试的话,代码量太大,而且对tester的要求未免过高了;测试的效果不好保证,完全依赖于tester的代码

yys79的专栏 1912

【Arquillian】Incorrect Summary

For recently vincent had done any research for Arquillian about EJB Unit Test,During this progress, i encountered and resolved some problems, so i decided to record them.           Firstly:About Jbos

暂七师师长常乃超 2044

Plugin Error : Problems found loading plugins: Plugin "Android Games" was not loaded: r

今天使用Android Studio 像往常一样打开一直在写的项目,打开之后就一直有问题,“编译”和“运行”按钮处于置灰状态,然后报错“Plugin Error Problems found loading plugins: Plugin "Android Games" was not loaded: required plugin "Android Support" is disabled.

yezhuAndroid的博客 7282

使用Chameleon,Shrinkwrap,Drone / Graphene与Arquillian进行Java EE集成测试

从我以前的帖子继续在这里 ,我想我已经了解了Java EE和也的Arquillian,并测试了一些新的(和令人兴奋的)事,我想与大家分享。 但是,在开始之前,我想首先请您注意以下几点(这些纯粹是我的观点): 考虑到Oracle 宣布停止对Commercial的商业支持,我想我决定看一下另一个领先的Java EE应用服务器Wildfly ,我感到非常高兴。 在上一篇文章中,我使用...

最佳 Java 编程 277
上一篇: JSF, MyFaces, RichFaces 和 Facelets的区别
下一篇: Java中的null到底是啥?
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值