错误猜测,是一种通过举出测试用例,找出程序漏洞的方法。
模块(单元)测试:是对程序中的单个子程序、子程序或过程进行测试的过程。
系统测试:将系统或程序与其初始目标进行比较,包含两方面的含义1、系统测试并不局限于系统,如果产品是一个程序,那么系统测试就是一个视图说明程序作为一个整体是如何不满足其目标的额过程。2、根据定义,如果产品没有一组书面的、可度量的目标,系统测试也就无法进行。
容量测试:使程序经受大容量数据的检验,其目的是为了证明程序不能处理目标文档中规定的数据容量。
强度测试:使程序承受高负载或强度的检验,所谓高强度是指在很短的时间间隔内达到的数据或操作的数量峰值。
易用测试:发现人为因素或易用性问题。(用户智力、背景、输入输出是否简介有效、错误诊断是否直接、语法风格问题、信息是否冗余不利于安全、确认信息是否需要)
安全性测试:是否达到安全目标。
可恢复性测试:故意将程序错误的置入某个系统中,判断系统是否可以从中恢复。
测试结束准则:1、用完了安排的测试时间后,测试便结束2、当执行完所有的测试用例都没有发现错误,测试便结束。
调试:是执行一次成功的测试之后要进行的工作。
所有的测试都是基于模型。
不要将实验与测试混淆起来。
威胁建模:威胁模型就象功能计划或设计文档一样,是一种规格说明。而最大的不同在于威胁模型的意图是找出一个应用程序能被攻击的所有可能的方法,然后根据概率和可能的危害来排优先级。好的威胁建模需要分析和调研技能—这两种技能使得测试在这过程中很适用。
测试用例的设计:
在实际测试过程中的心得:
1、许多同学对于题目没有读的很严谨,在输出上没有严格按照规范,输出错误是严格判错的。
2、有一个非常重要的问题是,对于边界条件没有把握好,我设计的每一种情况的边界情况考察2次,较多同学没有做好这一项,可能是时间比较紧,另外就是没有养成良好的测试和思考习惯,有的溢出、有的呈现出错误的结果等等。
3、对于程序输入值,有同学没有考虑输入完全错误和输入越界的情况。
4、还有同学图省事,简单的使用某些看似等价的语句,一测试,立刻原形毕露。