多语言集成测试框架(Multi-language integration testing frame

2019-08-17 18:24发布

假设你有不同部件制成一个相当复杂的面向服务的架构。 组件写在不同的语言(Java,PHP和Ruby),并以不同的方式相互通信(即UI,REST API,在某些情况下,某些共享数据库表等)。

我想设计一些终端到终端的测试的集成测试框架。 我们已经为单一部件单元/集成测试,但我们想建立的东西,对其进行全面测试我们部署的系统(在实际环境中)的端至端,以确保功能(在个人的期望行为的条款成分)被正确地设置,并且该架构的配置是否正确,以及。

我现在面临的第一个问题是,我们大多数的用户界面是用PHP编写和UI集成测试已经与黄瓜和一对夫妇在上面的插件写它。 测试框架我正在写(在Java中)应触发这些功能测试和事后检查相关部件的行为预期。

很显然,我可以重写使用像硒一个Java友好组件的UI测试,但它没有意义的重复工作。

另一种解决方案是用在Java中一个exec()调用运行现有的测试,等他们回来,可能解析输出,并与其他动作/检查,需要做继续。

嵌入在Java现有的PHP代码似乎并没有给项目已被写入方式的可行的解决方案。

该解决方案中没有描述听起来似乎有理,给我。 理想情况下,这将是很好有一些种类多语言(和多技术)的集成框架,可以用不同语言编写相同的测试套件的测试中,并针对不同的环境/组件插件。

有谁知道一些工具或框架,该框架在这个方向? 如果不是,有什么可以是一个很好的方法来这样的问题?

Answer 1:

不知道这是否可以帮助,但也许看看https://github.com/nablex/glue 。 这是我与重点(集成)测试开发的脚本语言。

它支持硒脚本开箱即用的,如果你插上https://github.com/nablex/glue-selenese ,是非常可扩展性。

目前我使用它的一些自定义扩展到运行用狐狸亲传统脚本客户(其实我重新实现了狐狸亲方法... 哆嗦 )和传统模式,使他们只对传统的脚本,而不是新的启用。 我也插上定制的基于SOAP的Web服务,其中一个可用于远程系统给我一个广泛的集成级测试工具上做数据库调用。

虽然脚本语言是全功能的,我消力充实的,默认情况下是可用的方法汇编,仍然试图将其定位为一个集成测试工具。 让我知道这是否有助于或 - 如果不可─为什么它不能满足您的需求,永远幸福的反馈! :)

PS:“主”类开始获得良好的地方它运行起来,因为它包含了工作CLI客户端(与断点支持!)



Answer 2:

你有没有考虑用类似的JMeter全栈测试?

你可以建立,对您的充分部署的软件运行测试

  • 创建一个用户
  • 确认用户成功打造screeen显示
  • 确认该用户在数据库预期
  • 删除用户
  • 确认删除userwas

这种方式,你都一次测试你的用户界面,业务逻辑和数据存储区。 它也可以用来做负载测试。

JMeter的



文章来源: Multi-language integration testing framework