Ing*_*her 8 java junit testng integration-testing java-ee
在我的IDE(Eclipse或NetBeans,无所谓)中,我有一些TestNG测试类(但我的问题也指远程JUnit测试),它们是Integration测试.这些测试需要集成服务器才能运行,它们无法在本地计算机上运行.他们需要集成服务器的完整环境 - 不仅仅是JavaEE容器相关的东西(=>没有Arquillian,也没有JEEUnit).
现在我希望能够在我的IDE(Eclipse)中运行这些测试 - 最好使用TestNG插件 - 但是当我启动它们时,它们实际上应该在远程集成服务器上运行.
是否可以从我的IDE中启动远程服务器上的集成测试?我喜欢在远程服务器上安装某种代理的想法,它等待测试请求并执行它们.但正如我所说,如果从TestNG插件内部运行它会很好.
我是否需要某种解决方法,例如Ant脚本(希望不是)或某些Maven魔法?什么是最佳做法?
我知道我也可以为我的应用程序创建Webservices,然后我可以从本地单元测试中调用它们.但我想知道是否还有没有Webservices的可能性.
不幸的是,我没有现成的解决方案,但我想我可以给你一些提示,因为我花了一些时间思考这个问题。
我不了解 TestNG,但 JUnit 能够插入您自己的测试执行器。我确信 TestNG 具有适当的功能。所以,找到它并熟悉它。由于您可以控制测试的调用方式,因此您甚至可以执行其他操作,而不是调用测试用例的方法。例如,调用一些远程 API,使测试能够远程运行。
显然,它可以是使远程代理(根据您的建议)在远程计算机上运行测试的Web服务。很好,但我更喜欢无代理或半无代理的解决方案。我是什么意思?例如,如果您的远程计算机是 Unix,您可以执行 SSH 或 Telnet 连接并运行命令行。在这种情况下,您可以创建 mvn 或 ant 脚本,使用 ssh 复制到远程计算机,然后运行它。该脚本将运行您的测试。所以它几乎是无代理的。您只需要 java 安装和 SSH 支持。
如果远程计算机是 Windows,则可以使用 Telnet 或 WMI。因此,如果安全不是问题但您需要跨平台支持,请使用 Telnet。
如果您需要有关 SSH/Telnet 的更多帮助,请随时与我联系。
| 归档时间: |
|
| 查看次数: |
5735 次 |
| 最近记录: |