跳到正文
IGCSE·Tuition
计算机科学 · 主题

验证、核实与测试

看起来能运行的程序,仍可能接受错误数据或藏着错误,考试正是在测试你能否证明这一点。

本页内容
  1. 需要先具备什么基础?
  2. 引导例子:一条规则,三项工作
  3. 应该按什么顺序学习各课?
  4. 常见陷阱有哪些?
  5. 怎样使用练习?

这个单元讲的是如何信任一个程序。**验证(validation)**阻止不可接受的数据进入,**核实(verification)**检查输入的数据是否与本意相符,测试(testing)则显示程序是否做到了需求所要求的事。考题奖励精确的术语和细心、逐步的演算。

确切的范围和现行代码,请查看适用于你考试年份的剑桥 IGCSE 计算机科学课程大纲页面。本单元属于更大的计算机科学学习指南。

需要先具备什么基础?

你应该能读懂含有 IF、循环和变量的短算法。如果追踪对你是新的内容,可参考硬件与处理和软件与系统了解背景,并看数据传输与检查理解检查数据的概念。

引导例子:一条规则,三项工作

一个虚构的社团规定:“年龄必须是 13 到 17 的整数。”

第一,验证执行这条规则。范围检查拒绝 20 和 12,类型检查拒绝 “abc”。

第二,测试问这个检查写得对不对。测试数据 13、17、12 和 18 能显示比较是否用了 >= 和 <=。

第三,核实问输入的年龄是否就是表上的年龄。真实年龄是 15 时,范围检查会接受 16,但重复输入能抓出来。

每一项工作抓出不同种类的错误,所以三者总是一起出现。

应该按什么顺序学习各课?

  1. 根据需求选择验证规则:五种检查,以及辨认它们的关键词。
  2. 区分核实与验证:重复输入、目视检查,以及有效数据为什么仍可能是错的。
  3. 设计正常、边界和无效测试数据:带预期结果的测试表。
  4. 在运行代码之前说明预期结果:用表格追踪来预测输出。
  5. 找出未测试的分支:确认代码中的每条路径都有测试。

请按这个顺序学习。每一课都用到前一课的内容,最后一课要你综合应用所有内容。

常见陷阱有哪些?

  • 说验证”确保数据是正确的”。它只确保数据合理。
  • 只选正常测试数据,忘了每个边界的两侧。
  • 预测输出时把 >= 读成 >。
  • 以为测试通过就证明所有代码都运行过。

怎样使用练习?

先在纸上做综合练习,再对照完整解答。受限伪代码追踪训练器和安全 Python 推理沙盒可以让你逐步运行循环和条件,错误记录与重测队列则帮你追踪重复出现的错误。如果你想让老师看你自己的演算,请参阅一对一线上计算机科学补习。

常见问题

这个课题主要是理论还是实践?

两者都有。你需要精确的定义,例如 validation 和 verification,也需要通过写检查、建立测试表和追踪短算法来应用它们。练习题把两者混合,让你同时训练两项技能。

考试要写代码吗?

有些题目要你完成或写出简短的伪代码,例如验证循环,另一些则要求追踪表。请到剑桥网站查看最新课程大纲,确认适用于你的符号写法和考试年份。

这个单元要花多少时间?

大多数学生用几次短时间的学习就能走完五课,之后在综合复习中再回头看。把学习分散开来更有帮助,因为这些术语放在一起读时容易混淆。

资料来源

  1. 剑桥 IGCSE 计算机科学 0478 课程大纲页面

更新于:

下一步

如果你能说出术语的定义,但测试表和追踪仍然丢分,一对一的老师可以逐行批改你的演算,指出推理在哪里出了偏差。

一小时付费试听课,按所安排老师确认的收费,RM80 起。 其他费用、时间安排及后续课程,在试听课后由家长与老师直接确认。

补习由家长或监护人安排。用 WhatsApp 把这页发给他们,他们就可以替你咨询。

是家长或监护人?在这里咨询

已通过我们的服务帮助 9,000+ 名学生