【引用,手抄】
1. 测试用例中一个必须部分是对预期输出或结果进行定义。
(一般来说,测试用例中,输入与输出是一个预先定义的对应关系)
2. 程序员应当避免测试自己编写的程序。
(与测试驱动开发,如何结合?)
3.编写软件的组织不应当测试自己编写的软件。
4. 应当彻底检查每个测试的执行结果。
5. 测试用例的编写不仅应当根据有效和预料的输入情况,而且也应当根据无效和未预料到的输入情况。
6. 检查程序是否“未做其应该做的”仅是测试的一半,测试的另一半是检查程序是否“做了不应该做的”。
(后一半比较难测,原因在于两方面,一方面,在需求文档及设计文档中,往往只定义了程序需要做什么,而较少定义不该做什么;另一方面,测试理论中也没有相应的模型,帮助人去测试“管了闲事的软件”。突然想到了“法不禁止,即可为”与“法不允许,即禁止”,似乎只有中西合璧才能测好一个软件。)
7. 应避免测试用例用后即弃,除非软件本身就是一个一次性的软件。
(测试经济学)
8. 计划测试工作时不应默许假定不会发现错误。
(该假定会影响项目的时间安排计划。如果预先能估计到在各个测试阶段可能出现多少量级的问题,就可以在项目初期预留出解决bug的时间。项目开发后期,特别是交付使用的前一段时间,开发测试组往往需要加班赶进度,很大程度上与前期的计划不合理有关。)
9. 程序某部分存在更多错误的可能性,与该部分已发现错误的数量成正比。
(强大的统计结果。)
10. 软件测试是一项极富创造性、极具智力挑战性的工作。
(同意。不管是制定学习计划,职业规划还是跳槽找工作都是极具“挑战性”啊。)
1. 测试用例中一个必须部分是对预期输出或结果进行定义。
(一般来说,测试用例中,输入与输出是一个预先定义的对应关系)
2. 程序员应当避免测试自己编写的程序。
(与测试驱动开发,如何结合?)
3.编写软件的组织不应当测试自己编写的软件。
4. 应当彻底检查每个测试的执行结果。
5. 测试用例的编写不仅应当根据有效和预料的输入情况,而且也应当根据无效和未预料到的输入情况。
6. 检查程序是否“未做其应该做的”仅是测试的一半,测试的另一半是检查程序是否“做了不应该做的”。
(后一半比较难测,原因在于两方面,一方面,在需求文档及设计文档中,往往只定义了程序需要做什么,而较少定义不该做什么;另一方面,测试理论中也没有相应的模型,帮助人去测试“管了闲事的软件”。突然想到了“法不禁止,即可为”与“法不允许,即禁止”,似乎只有中西合璧才能测好一个软件。)
7. 应避免测试用例用后即弃,除非软件本身就是一个一次性的软件。
(测试经济学)
8. 计划测试工作时不应默许假定不会发现错误。
(该假定会影响项目的时间安排计划。如果预先能估计到在各个测试阶段可能出现多少量级的问题,就可以在项目初期预留出解决bug的时间。项目开发后期,特别是交付使用的前一段时间,开发测试组往往需要加班赶进度,很大程度上与前期的计划不合理有关。)
9. 程序某部分存在更多错误的可能性,与该部分已发现错误的数量成正比。
(强大的统计结果。)
10. 软件测试是一项极富创造性、极具智力挑战性的工作。
(同意。不管是制定学习计划,职业规划还是跳槽找工作都是极具“挑战性”啊。)