首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >集成测试的需求

集成测试的需求
EN

Stack Overflow用户
提问于 2013-07-04 20:12:50
回答 1查看 189关注 0票数 1

我们在前端有Eclipse UI,并有一个非基于Java的后端。

我们通常分别为前端和后端编写单元测试。我们还编写了PDE测试,它在虚拟后端上运行Eclipse UI。

我的问题是,我们是否需要进行端到端的集成测试。

我可能认为这些集成测试有用的一个原因是,当我升级我的前端/backend时,我可以运行端到端测试,并发现缺陷。

我知道这类问题取决于特定的场景。但想知道这里所有人所遵循的一般和最佳实践是什么。

干杯,Saurav

EN

回答 1

Stack Overflow用户

发布于 2013-07-05 00:54:17

正如您所说,最好的方法取决于应用程序。但是,一般来说,最好有一套集成测试,可以端到端地测试您的应用程序,以便发现当您只升级应用程序的一层而没有在另一层中考虑这些更改时可能出现的任何问题。在您的情况下,这听起来绝对是值得的,因为您的系统组件是用不同的语言编写的,这自然会产生更多的问题,因为组件接口增加了复杂性。

在编写端到端集成测试(有些人会将其称为系统测试)时需要注意的一件事是,与单元测试相比,它们往往非常脆弱,单元测试是许多因素的组合,包括:

  • 它们需要多个组件可用于测试,要配置的这些组件之间的通信需要比单元测试多得多的代码,因此有更多可能导致它们失败的错误。
  • 它们通常涉及异步通信,这比为其编写测试更困难。

通常需要复杂的后端数据设置,然后才能在整个应用程序中驱动测试。

由于这种脆弱性,我建议尽可能少地编写通过整个堆栈的测试-重点应该是在尽可能少的测试中覆盖尽可能多的功能,并偏向于您最重要的功能用例。一个好的入门策略是:

  • 选择一个关键用例(理想情况下,它涉及应用程序中尽可能多的组件),并为此进行端到端测试(即使只有这一个测试也会带来很多价值)。专注于使这项测试尽可能现实(即使用类似生产的部署),尽可能可靠,尽可能自动化(理想情况下,它应该作为持续集成的一部分运行)。即使只有这一个测试也会带来很多价值。
  • 为其他用例构建测试,一次只测试一个,再次首先关注您最重要的用例。

这种方法将有助于确保您的端到端测试具有高质量,这对它们的长期健康和有用性至关重要。我见过太多次,人们试图在应用程序中引入一套全面的此类测试,但最终失败了,因为这些测试很脆弱&不可靠,人们对它们失去了信心,不运行或维护它们,最终他们甚至忘记了他们从一开始就有测试。

祝你好运,玩得开心!

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17470026

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档