php - 单元测试: Beginner Questions

标签 php unit-testing

我终于开始进行单元测试了,因为我知道我应该这样做一段时间,但我有几个问题:

  • 我是否应该重新测试家长 测试 children 是否在类里面 没有方法被覆盖?
  • 从概念上讲,您如何测试 提交了表格的一部分?我在用着 PHP。 (编辑:我问这个问题的原因是我有一个高级表单类,它生成表单、验证表单、过滤表单,并通过将类似 JSON 的数组作为输入和生成任何错误消息委托(delegate)给各种较小的类。但是,如果不提交表单,我无法测试错误等。编辑:This看起来这可能是一个答案。)
  • 如果你有可选参数 方法,你应该为 无论是当他们在场时还是当 他们不是吗?
  • 是否应该以任何方式进行单元测试 结合测试代码执行 时间还是应该完全保留 分开?
  • 是否有任何不运行的正当理由 每次都使用完整的测试套件吗?
  • 只是为了让我了解我的术语 对了,单位中的单位是什么 测试引用?类(class)是 测试过?方法?参数? 还有别的事吗?

最佳答案

  • 测试父级,测试子级;如果子级没有重写父级方法,则无需重新测试。
  • 我不确定我是否理解第二个。您可以使用 Selenium 来自动测试表单。你是这个意思吗?
  • 测试应包括“快乐路径”和所有边缘情况。如果您有可选参数,请编写测试以显示存在和不存在值的正确操作。
  • 单元测试、集成测试、验收测试、负载测试都是不同的想法,可能有一些重叠。
  • 我敢打赌这是有充分理由的,但如果您正在进行自动运行测试套件的自动化构建,为什么不运行它们呢?也许我会想到长时间运行,但这是我能想到的唯一原因。值(value)在于看到所有这些都继续通过,并且您所做的更改没有破坏任何内容。
  • 对我来说,单元测试意味着您正在测试的类,它可以有多种方法。我将它们与类而不是表单联系起来。表单对我来说意味着 UI 和集成测试。

关于php - 单元测试: Beginner Questions,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/473561/

相关文章:

javascript - 使用 sortable.js 时如何在 php 中返回一个新数组

php - foreach循环,检查是否通过,显示错误数组

ruby - 在 rspec 中测试递归 IO 提示

unit-testing - 在函数内部的结构上实现接口(interface)

java - NPE 使用 mockito 进行单元测试

php - 如果选择了多个值,数组不会从 mysql 返回任何内容

php - insertBefore() 无法与 PHP DOM 一起正常工作

php - phunit 如何处理有关需要/包含的多个文件?

c++ - 如何使用 CMake 在 C++ 代码中运行 gtest? (未见测试)

java - 如何使包私有(private)类仅对其他包可见?