百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术文章 > 正文

Arquillian:针对Java中间件的集成测试和功能性测试平台

myzbx 2025-07-27 22:30 25 浏览

Arquillian是一个针对JVM高度可扩展的新型测试平台。开发者可以用它对Java中间件方便地进行自动化集成测试、功能测试和验收测试。

主要功能

真实测试

Mock(模拟)通常是一种策略,但多数情况是在真实环境以外的情况下使用。Arquillian弃用了Mock转而使用真实的测试。这是因为Arquillian将测试加入到了运行时,可以让你访问容器资源,从而得到有意义的反馈并了解代码内部真实的运行情况。

便捷的IDE

为了尽可能降低学习曲线,Arquillian已经与你熟悉的工具进行了集成。你在使用JUnit编写单元测试吗?没问题,你可以利用掌握的JUnit知识进行集成测试。你更喜欢TestNG?没问题,Arquillian可以让你自由选择。你甚至可以在IDE执行单元测试时直接运行Arquillian测试。

聚集测试资源

通常,无论使用那种技术栈,应用程序和测试通常使用相同的编程模型。例如,Arquillian可以将部署的“上下文和依赖注入(CDI)bean”、企业级JavaBeans(EJB)组件和其它Java EE资源注入到测试中。 Arquillian还可以将编程模型进行扩展,访问其它容器的API和类似JSFUnit、Selenium这样测试框架中的隐含对象。

控制Classpath

大多数测试集(Test Suite)看起来一团糟,这不是你的错。测试框架在使用测试程序classpath上的类和资源时不是很规范,使得隔离测试场景变得非常困难,最终导致测试集成为了怪物。Arquillian不是这样。微部署比部署整个应用要容易得多,从而使部署测试更加快速,加快“测试编码测试”开发周期。

支持浏览器测试

Arquillian在客户端测试和服务器测试同样表现出色。Arquillian Drone简化了Selenium服务器所有繁琐的设置,让你直接在浏览器上执行测试。Arquillian甚至将客户端和服务器测试进行了统一,最典型的案例莫过于我们的JSFUnit集成。

调试服务器

Arquillian让你可以尝试从未有过的服务端调试。 通常,你需要打包应用程序、部署到服务器、连接调试器,通过UI交互来触发断点。现在你可以直接在测试代码或应用代码中设置断点,对测试进行调试。 你可以在熟悉的IDE中收到服务器程序触发断点的事件。试一下可以大开眼界哦!

不限定容器

只要为容器命名,Arquillian会对它管理。如果事实不是这样,为什么还会有这段描述呢?Arquillian支持在不同的容器间切换,从开发环境的嵌入式容器到持续集成中的独立服务器。在不同的容器上进行兼容测试,可以确保应用的可移植性。甚至可以通过这个功能测试应用在分布式环境下的表现。

可扩展平台

实际上,用Arquillian测试没有所谓的限制。Arquillian提供了很多扩展。如果你需要的集成还没有线程的实现,Arquillian提供了一个可扩展平台,可以方便地集成其它很棒的测试工具。

强大的工具

想快速熟悉Arquillian?像JBoss Forge这样的工具可以为你提供帮助。只要安装Arquillian插件,在项目中进行设置就可以马上开始编写测试。你会惊讶于Arquillian和Forge的简单方便——这是下一代的企业级解决方案。

开发资源

下载:各模块下载链接。

技术博客

官方文档

入门教程:中文版

API

参考手册

FAQ

书籍:”Arquillian in Action“

官方网站:http://arquillian.org/

开源地址:
https://github.com/arquillian

相关推荐

如何设计一个优秀的电子商务产品详情页

加入人人都是产品经理【起点学院】产品经理实战训练营,BAT产品总监手把手带你学产品电子商务网站的产品详情页面无疑是设计师和开发人员关注的最重要的网页之一。产品详情页面是客户作出“加入购物车”决定的页面...

怎么在JS中使用Ajax进行异步请求?

大家好,今天我来分享一项JavaScript的实战技巧,即如何在JS中使用Ajax进行异步请求,让你的网页速度瞬间提升。Ajax是一种在不刷新整个网页的情况下与服务器进行数据交互的技术,可以实现异步加...

中小企业如何组建,管理团队_中小企业应当如何开展组织结构设计变革

前言写了太多关于产品的东西觉得应该换换口味.从码农到架构师,从前端到平面再到UI、UE,最后走向了产品这条不归路,其实以前一直再给你们讲.产品经理跟项目经理区别没有特别大,两个岗位之间有很...

前端监控 SDK 开发分享_前端监控系统 开源

一、前言随着前端的发展和被重视,慢慢的行业内对于前端监控系统的重视程度也在增加。这里不对为什么需要监控再做解释。那我们先直接说说需求。对于中小型公司来说,可以直接使用三方的监控,比如自己搭建一套免费的...

Ajax 会被 fetch 取代吗?Axios 怎么办?

大家好,很高兴又见面了,我是"高级前端进阶",由我带着大家一起关注前端前沿、深入前端底层技术,大家一起进步,也欢迎大家关注、点赞、收藏、转发!今天给大家带来的主题是ajax、fetch...

前端面试题《AJAX》_前端面试ajax考点汇总

1.什么是ajax?ajax作用是什么?AJAX=异步JavaScript和XML。AJAX是一种用于创建快速动态网页的技术。通过在后台与服务器进行少量数据交换,AJAX可以使网页实...

Ajax 详细介绍_ajax

1、ajax是什么?asynchronousjavascriptandxml:异步的javascript和xml。ajax是用来改善用户体验的一种技术,其本质是利用浏览器内置的一个特殊的...

6款可替代dreamweaver的工具_替代powerdesigner的工具

dreamweaver对一个web前端工作者来说,再熟悉不过了,像我07年接触web前端开发就是用的dreamweaver,一直用到现在,身边的朋友有跟我推荐过各种更好用的可替代dreamweaver...

我敢保证,全网没有再比这更详细的Java知识点总结了,送你啊

接下来你看到的将是全网最详细的Java知识点总结,全文分为三大部分:Java基础、Java框架、Java+云数据小编将为大家仔细讲解每大部分里面的详细知识点,别眨眼,从小白到大佬、零基础到精通,你绝...

福斯《死侍》发布新剧照 "小贱贱"韦德被改造前造型曝光

时光网讯福斯出品的科幻片《死侍》今天发布新剧照,其中一张是较为罕见的死侍在被改造之前的剧照,其余两张剧照都是死侍在执行任务中的状态。据外媒推测,片方此时发布剧照,预计是为了给不久之后影片发布首款正式预...

2021年超详细的java学习路线总结—纯干货分享

本文整理了java开发的学习路线和相关的学习资源,非常适合零基础入门java的同学,希望大家在学习的时候,能够节省时间。纯干货,良心推荐!第一阶段:Java基础重点知识点:数据类型、核心语法、面向对象...

不用海淘,真黑五来到你身边:亚马逊15件热卖爆款推荐!

Fujifilm富士instaxMini8小黄人拍立得相机(黄色/蓝色)扫二维码进入购物页面黑五是入手一个轻巧可爱的拍立得相机的好时机,此款是mini8的小黄人特别版,除了颜色涂装成小黄人...

2025 年 Python 爬虫四大前沿技术:从异步到 AI

作为互联网大厂的后端Python爬虫开发,你是否也曾遇到过这些痛点:面对海量目标URL,单线程爬虫爬取一周还没完成任务;动态渲染的SPA页面,requests库返回的全是空白代码;好不容易...

最贱超级英雄《死侍》来了!_死侍超燃

死侍Deadpool(2016)导演:蒂姆·米勒编剧:略特·里斯/保罗·沃尼克主演:瑞恩·雷诺兹/莫蕾娜·巴卡林/吉娜·卡拉诺/艾德·斯克林/T·J·米勒类型:动作/...

停止javascript的ajax请求,取消axios请求,取消reactfetch请求

一、Ajax原生里可以通过XMLHttpRequest对象上的abort方法来中断ajax。注意abort方法不能阻止向服务器发送请求,只能停止当前ajax请求。停止javascript的ajax请求...