Ohhnews

分类导航

DZone Java

Java API自动化测试:使用TestNG Iterator优化大规模数据驱动测试

本文介绍了在Java API自动化测试中,如何利用TestNG的Iterator替代传统的Object数组来实现数据驱动测试。相比于将所有数据一次性加载到内存中,使用Iterator能够更高效地处理大规模或动态数据集,从而提升测试的内存管理能力和可扩展性。文中通过REST Assured框架演示了具体的实现步骤,包括创建POJO数据模型、定义DataProvider方法以及编写测试用例,为处理复杂测试数据提供了一种更轻量且灵活的解决方案。
#api测试#java#testng#自动化测试#数据驱动
$ more
foojay

TestBox 7发布:引入实时反馈、浏览器端IDE及现代化测试工作流

TestBox 7 版本亮点 TestBox 7 正式发布,专注于优化 BoxLang 和 CFML 应用的测试工作流。此次更新的核心亮点包括: TestBox RUN:一款自托管的浏览器端测试 IDE,无需构建工具链即可在浏览器中实时查看测试结果。 实时流式执行:通过服务器推送事件 (SSE) 实现测试用例执行的实时反馈,显著提升开发效率。 高级测试控制:引入“Dry Run”(空运行)模式与规格发现功能,便于在执行前审计测试套件。 命令行增强:BoxLang CLI 增加了流式传输标志、失败聚焦控制及堆栈跟踪管理,并支持自动加载应用映射。 兼容性更新:增加了对 Lucee 7 的支持,并停止了对 Adobe 2021 的支持。 该版本旨在通过更直观的 UI 和更灵活的 CLI 选项,为开发者提供现代化、高效的 JVM 环境测试体验。
#软件测试#开发工具#boxlang#自动化测试#ide
$ more
foojay

基于Spring Boot与MongoDB的整洁架构实践

核心概念 本文介绍了如何通过整洁架构(Clean Architecture)实现业务逻辑与底层框架的解耦。其核心原则是依赖方向始终向内指向领域层(Domain Layer),确保业务规则不依赖于Spring Boot或MongoDB等外部基础设施。 架构分层 领域层:包含核心业务实体(如Product、Order)及业务规则,完全不包含框架注解。 应用层:定义用例接口(Use Cases)并协调领域对象,不关注数据存储细节。 适配器层:负责与外部环境交互,包括Web控制器、MongoDB持久化实现及数据映射(Mapper)。 基础设施层:通过Spring配置进行依赖注入和事务管理。 实践意义 通过将数据库操作封装在适配器中,开发者可以实现技术栈的平滑替换(如从MongoDB更换为PostgreSQL),同时保证核心业务逻辑的稳定与可测试性。该架构虽增加了初始的代码结构开销,但显著提升了大型项目的可维护性与扩展性。
#整洁架构#spring boot#mongodb#软件设计#后端开发
$ more
foojay

Eclipse GlassFish:早已不是你印象中的那个应用服务器

本文介绍了Eclipse GlassFish的演进历程,打破了其不支持生产环境的陈旧观念。自2022年起,在OmniFish的推动下,Eclipse GlassFish已转型为完全支持生产环境的企业级平台。相较于Oracle时代的版本,现代版GlassFish实现了每月高频更新,全面兼容Jakarta EE 11与MicroProfile,支持最新的Java版本,并在启动速度、性能优化、安全性及云原生部署能力上取得了显著提升。目前,Eclipse GlassFish提供专业的商业支持,是企业级Java应用开发与微服务架构的可靠选择。
#java#应用服务器#jakarta ee#企业级开发#软件架构
$ more
Jetbrains Blog

JetBrains发布JetBrains Central:面向AI代理软件开发的开放式控制与执行平台

JetBrains Central:重塑AI驱动的软件生产系统 随着AI代理(AI Agents)从简单的代码辅助转向复杂的任务自动化,软件开发正演变为一个跨越工具、环境和流程的分布式系统。JetBrains正式推出JetBrains Central,旨在为AI代理驱动的软件生产提供统一的控制与执行平面。 核心功能与价值 治理与管控:提供策略执行、身份权限管理、可观测性及成本归因,解决企业在规模化应用AI时的合规与可控性难题。 执行基础设施:支持云端代理运行时及计算资源调度,确保代理在开发环境中可靠运行。 语义上下文优化:通过构建跨仓库的语义层,使AI代理具备系统级的代码与架构理解能力,实现任务的最优路由。 行业影响 JetBrains Central并非封闭平台,而是采用分层架构,允许企业集成现有的开发工具、IDE及第三方AI模型(如Claude、Gemini等),避免技术锁定。该系统致力于将AI从个人生产力工具提升为企业级的软件交付系统,通过Air App等协作工具,实现人机协同工作流的无缝衔接。 发展规划 JetBrains已启动该项目的早期访问计划(EAP),旨在通过设计合作伙伴在实际场景中验证其效能。此举标志着JetBrains在推动软件生产系统向AI原生转型的同时,强调了可控性、可靠性及商业价值的一致性。
#人工智能#软件开发#ai代理#研发效能#治理与控制
$ more
foojay

Lottie4J 1.2.0 发布:新增 dotLottie 支持、标记回放与性能大幅提升

版本更新概览 Lottie4J 1.2.0 版本正式发布,此次更新带来了多项关键改进,旨在提升动画处理能力与渲染性能。 核心亮点 dotLottie 支持:全面支持 .lottie 容器格式,允许加载包含多个动画、图像及资源的自包含文件。 播放器功能增强:新增基于标记(Marker)的片段回放功能、画布裁剪支持以及可调整大小的播放器,提升了集成灵活性。 显著性能优化:通过改进渲染管线和增加缓存层,渲染速度获得大幅提升,并引入了自适应渲染模式,允许在清晰度与性能之间进行权衡。 模型与工具完善:核心库修复了多种复杂动画的渲染问题,支持混合模式与空间贝塞尔插值;同时升级至 Jackson 3,并优化了调试工具与自动化测试流程。 该版本通过对复杂实际动画的深度测试,显著增强了库的稳定性和渲染还原度。
#lottie4j#java#动画渲染#软件更新#性能优化
$ more
Spring Blog

Spring 生态周报:Spring Boot 4.1.0-M3 发布及多项更新

本期 Spring 周报重点介绍了 Spring Boot 4.1.0-M3 的发布,该版本新增了对 Spring gRPC、Log4j 文件轮转、OpenTelemetry 优化、Spring Batch MongoDB 以及 RabbitMQ SSL 和 AMQP 1.0 的支持。此外,Spring AI 结合 MCP 规范开启了新的应用潜能。其他更新包括 Spring Security、Spring Batch 和 Spring Integration 的多个版本维护更新,以及 Spring Data Valkey 1.0 的正式发布。本期还分享了关于本地 AI 模型与 Spring AI 集成的技术探讨,以及微软在 Java 领域的应用案例。
#spring boot#java#人工智能#软件开发#微服务
$ more
Jetbrains Blog

OpenAI收购Astral公司:对PyCharm用户意味着什么?

事件概述 OpenAI近日宣布收购Python工具开发商Astral,其核心团队将加入OpenAI的Codex项目。Astral开发的uv、Ruff和ty等工具在Python生态中具有极高影响力,月下载量达数亿次。 行业影响 技术整合:Astral开发的工具已成为Python开发的基础设施,JetBrains表示将继续在PyCharm中支持这些工具。 开源担忧:尽管社区担心收购可能导致工具开发停滞,但由于Astral工具采用宽松的开源协议,且OpenAI承诺持续维护,社区认为风险可控。 未来展望:JetBrains强调将继续与相关团队合作,确保为Python开发者提供最佳的集成开发环境体验。
#openai#astral#python开发#软件工具#开源生态
$ more
Jetbrains Blog

对话 Josh Long:Kotlin 与 Spring 生态系统的演进与协同

深度对话:Josh Long 谈 Kotlin 与 Spring 在 KotlinConf'26 大会前夕,Spring 首位开发者倡导者 Josh Long 分享了对 JVM 生态演进的见解。他指出,Spring 已从传统的企业级应用扩展至微服务、分布式系统及 AI 驱动的服务。Long 强调,Kotlin 与 Spring 的结合是目前最自然且高效的开发体验,得益于双方在编译器插件及 DSL 设计上的紧密协作。针对 AI 开发,他认为 JVM 在性能、安全性和系统集成方面表现优异,远胜于孤立的 AI 工作流。他鼓励开发者利用现有基础设施,通过 Spring AI 等工具将 AI 能力无缝集成到业务应用中。
#kotlin#spring#jvm#人工智能#软件开发
$ more
Jetbrains Blog

代理分析时代:数据团队的新角色与语义基础设施

代理分析时代的数据变革 随着AI代理在数据分析领域的普及,数据团队的角色正从传统的仪表盘构建者转变为规则与语义的制定者。为了确保AI生成结果的可靠性,文章提出了三个关键支柱: 指标即代码 (Metrics as code):将业务逻辑标准化并在代码中执行,而非依赖个人经验或散乱的文档。 基于Git的版本控制:通过代码评审流程,确保所有指标变更可追溯、可审计。 强制护栏 (Hard guardrails):限制AI仅能使用经过批准的指标,防止其随意臆造数据。 代理协作模式与基础设施 未来的分析体系不再依赖单一的超级聊天机器人,而是由多个具备特定职能的代理组成(如发现代理、语义创作代理、审计代理),并始终保持人工审核环节。在市场趋势方面,行业正向“无头语义基础设施”转型,通过解耦语义层与前端,实现跨工具的数据一致性。此外,2025年启动的开放语义交换标准(OSI)标志着行业正致力于建立厂商中立的语义模型,从而确保数据定义在不同系统间的可移植性与信任度。
#数据分析#人工智能代理#语义层#数据治理#企业架构
$ more