使用健身与自动化集成测试的优势是什么?当旨在提供经过全面测试的解决方案时,我正在努力了解 Fitness 的确切位置。当然,如果开发人员对他们的代码进行了单元和集成测试,那么这就足够了。为什么团队需要重复集成测试工作?
4 回答
敏捷环境中的测试用例主要有四种类型:
1) 自动化单元测试(例如,使用 J-unit);
2) 自动特征验证测试(例如,使用 Fitnesse);
3) 自动化功能/回归测试(例如,使用 Selenium 或 QuickTestPro);
4) 人工测试。
对于类型 1-3,当然有指定的自动化测试用例。对于类型 4,测试用例往往是逻辑(或高级)测试用例,这需要测试人员具备更高水平的技能和领域知识。此外,往往会发生大量基于经验的测试,例如探索性测试、缺陷分类测试等。
请参阅此处的 RBCS 博客:
使用健身的主要原因是如果您要让非技术人员编写测试。例如,假设我们必须支持大量不同的佣金支付方式。非技术人员可以制作电子表格,显示一个花花公子赚取一定数量的面团,询问系统他们应该获得多少佣金,然后断言计算是正确的。
就个人而言,我发现 FIT 带来的麻烦多于其价值。我认为如果制造商认真并制作了一些工具来设置和配置它,它可能是一个非常引人注目的工具。
但主要的是,只有在您确定您将有很多业务规则类型的东西来验证 BA 甚至客户可以直接参与时才使用它。这不是为了断言轨道常数正在被正确计算。
健身应该让业务分析师更容易拥有和运行测试。开发人员创建夹具;业务分析师提供数据并确认测试通过。
以我的经验,业务分析师既没有背景也没有兴趣做这样的事情。
体能测试更像是集成测试。它们可能涉及多个组件。单元测试应该由开发人员对单个组件进行。因此得名“单位”。
我更喜欢单元测试。
这个问题暗示了一种错误的二分法;FitNesse是一个自动化的集成测试解决方案。只是测试(打算)被创建为 wiki 页面中的标记。
我目前正在使用它作为我的集成测试解决方案;我使用命令行运行所有集成测试。测试也可以通过 JUnit 或 REST API(需要运行 FitNesse 服务器)来运行。
正如 Rob 在他们的回答中提到的那样,设置和配置并不(非常)容易,但我并没有觉得它太难。我对 Rob 的说法提出异议,即“这不是为了断言轨道常数正在被正确计算。”;事实上,它完全可以用于此目的。
我遇到了这个问题,因为我正在寻找使用或使用过 Fit 或 FitNesse 进行单元测试的人的评估。我想到这个想法的原因是,作为一名开发人员,我发现以 FitNesse wiki 页面的形式理解一组测试比理解代码文件要容易得多。
下面是我的一个项目中的测试页示例。这些测试是集成测试,但我想不出为什么这对于单元测试也不起作用。测试代码并没有什么特别之处,它会阻止单元被测试。