![]() |
1
1
许多电气浪涌保护器都有一个测试按钮来检查其功能是否正确。它是一种非常聪明的测试形式,因为它不仅在开发人员手中,而且在最终用户手中。 另一个例子是:许多控制报告灯(特别是在关键环境中,如核电站等)都有一个按钮来打开它们,并检查它们是否仍然工作。对于许多使用LED显示屏的设备也是如此。 电池有电源指示灯,所以你可以在购买前对其进行测试。 在糖精加工中,您监控生产的许多步骤(有点断点),以评估产品的质量。工厂的设计目的是为了提供这些测试断点,方便人工取样器(通常费用不高)。 最后,汽车制造商包括所有类型的诊断。汽车修理厂有一台计算机来全面检查汽车的状态。它是一种“事后”的调试日志,所以不是真正的“预防性测试”,但仍然非常有用,它的包含是一个现实世界的“测试性设计”。 然而,现实世界测试和软件世界测试之间的主要区别在于,现实世界测试可以破坏产品,达到破坏性的极限。因此,通过破坏性抽样和分析来评估故障与良好比率。在软件测试中,你从来没有破坏性的测试(除非你是一个有邪恶意图的虐待狂程序员) |
![]() |
2
0
如果已经构建了一组组件以便对它们进行测试,那么它们很可能会更模块化,并且松耦合。例如,可以简单地模拟和注入使用IOC容器而不是服务定位器作为合作者的代码,这样更容易测试代码。 这种分离伴随着发展。由于类型不依赖于它的合作者,因此它允许以不同的结构组合这些部件,这意味着重构/响应新需求更简单。您还将对任何重构更有信心,因为您有一套测试来验证您的更改。 综上所述,这意味着在我的经验中,为测试而编写的代码更快、更容易修改,从而减少了我所喜欢的工作。 一些设计用于测试(自身或其他事物)以避免更大问题的组件的现实世界示例:
|
![]() |
mg610 · 如何开始C++单元测试 2 年前 |
![]() |
Phil Gunning · 使用嵌套函数更改进行模拟测试 2 年前 |
![]() |
shilin agre · 在Python中测试修饰函数 2 年前 |
![]() |
SlipScout · Unittest只传递单个值,而不是获取多个值 2 年前 |
![]() |
Alex · 从实际对象的实例返回默认模拟结果 2 年前 |