【问题标题】:Using If Statements Instead of Unit Testing使用 If 语句代替单元测试
【发布时间】:2018-09-14 18:25:52
【问题描述】:

我是单元测试的新手(目前正在学习 Jest),我似乎找不到使用单元测试的特定理由,而不是说与 console.log() 函数绑定的 ifelse 语句.一个解释将不胜感激。谢谢。

【问题讨论】:

  • 好的,记录你的结果。现在写 100 个函数。现在试着看看它们中的任何一个是否坏了。离开项目半年再回来——看看现在有没有什么问题。哦,为了额外的乐趣 - 也可以与他人合作。在 6 个月的时间里,您可能会从 100 项功能跃升至 1000 项。更有可能更多,但让我们一起努力 - 看看有什么问题(如果有的话)。
  • 您正在使用 Jest 来评估很多事情,您必须自己编写该功能,而且测试是在捆绑包中运行和报告的
  • 您是否有自动化/CI/CD 来部署/管理您的应用程序?您如何知道使用 console.log() 语句测试失败以防止出现错误/错误的部署?
  • 这个问题是一个荒谬的比较。如果语句和单元测试不仅仅是苹果和橘子,它们就是苹果和哲学。您可能会发现my answer to a related question at SoftwareEngineering.SE 很有用。

标签: javascript unit-testing if-statement mocha.js jestjs


【解决方案1】:

通过在开发周期的早期发现错误并减轻测试人员的工作量,在构建应用程序时,单元测试非常有助于测试源代码。这是软件测试的一个级别,其中测试软件的单个功能/方法。目的是验证软件的每个功能是否按设计执行。

单元测试的主要好处:

  1. 让流程变得敏捷
  2. 代码质量
  3. 尽早发现软件错误
  4. 促进更改并简化集成
  5. 单元测试有助于简化调试过程。如果测试失败,则只需调试对代码所做的最新更改。
  6. 测试一段代码会强制您定义该代码的职责。如果您可以轻松做到这一点,则意味着代码的职责已明确定义,因此具有很高的凝聚力。
  7. 由于在单元测试的早期就发现了错误,因此有助于降低错误修复的成本。试想一下在开发的后期阶段(例如在系统测试或验收测试期间)发现错误的成本。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-08-16
    • 1970-01-01
    • 2014-06-05
    • 2021-06-07
    • 1970-01-01
    • 2015-02-09
    • 2016-02-04
    • 2018-10-31
    相关资源
    最近更新 更多