程序测试是一种「特殊的程序开发理论」,与面向过程,面向对象同样,都是对** 程序理论 **的应用。框架
测试是用一个标准或规格对比一个实际物,看符合程度是什么,例如测量身高是一个量化测试,而智力测试则是一个质化测试。前者有单一的标准,后者标准比较复杂。软件测试同理,是一种质化测试,对比的规格是“计算功能”这种“质”。函数
程序测试分为人工的集成测试和自动化的单元测试工具
程序开发理论:开发任意的计算功能 程序测试理论:开发「测试/验证计算功能,验证某个程序(单元)」的计算规格,并进行报告单元测试
测试框架/工具提供特定的API,来完成尝试任务(编写测试程序) 使用预期:规格spec 使用断言:验证 使用模拟:程序单元测试
参考测试框架的形式: 这段「测试程序」代码是一段针对prettyDate特制(ad-hoc )的,其中包含了全套通用测试框架(testing framework)的形式部分,例如测试程序主体(test),测验输入(then)输出(result),测验的参考“预期答案”(expected),对输出的断言操做(!==),测试报告等。从代码看到整个测试的流程(测试程序的执行):一次测验会用输入(then)调用功能函数,接收输出(result)并进行断言(!==expected),最后记录测试结果用于报告。一次测试由多个测验组成。对象