测试准则

测试准则,是软件测试员或软件工程师用来检测测试是否通过的一种机制。[1]测试准则决定在给定的测试用例输入下产品应有的输出,从而与被测试系统的输出做比较。这一术语在威廉·豪登(William Howden)的《测试理论入门》一书中首次被使用和定义。[2]艾琳·韋約克英语Elaine Weyuker又对不同类型的测试准则给予了拓展。[3]测试准则经常独立于被测试系统。[4] 在自动化测试中后置条件方法是通常被使用的自动化了的测试准则。[5]测试准则问题往往比看起来要难得多,同时会连带要求解决可控性和可观测性问题。[6]

常见的测试准则包括:

  • 设计规格软件文档[7][8]
  • 其它产品(例如:作为一个软件程序的测试准则,有可能是使用不同算法计算同一个数学表达式的其它程序)
  • 为一组少量测试输入提供近似或准确结果的"启发式准则"[9]
  • 使用统计学特征的"统计式准则"[10]
  • 由相似性比较一个测试执行结果而产生的"一致性准则"[11]
  • 由使用相同模型而产生和确认系统行为的"基于模型的准则"[12]
  • 人工准则(例如:由手工分析来确定被测试系统的正确性)[6]

參考資料

  1. ^ Kaner, Cem; A Course in Black Box Software Testing页面存档备份,存于互联网档案馆), 2004
  2. ^ Miller, Edward; and Howden, William E.; Software Testing and Validation Techniques, Long Beach, CA: IEEE Computer Society Press, 1978 (first edition), pp. 16-19
  3. ^ Weyuker, Elaine J.; "The Oracle Assumption of Program Testing", in Proceedings of the 13th International Conference on System Sciences (ICSS), Honolulu, HI, January 1980, pp. 44-49
  4. ^ Jalote, Pankaj; An Integrated Approach to Software Engineering, Springer/Birkhäuser, 2005, ISBN 0-387-20881-X
  5. ^ Meyer, Bertrand; et al.; "Programs that Test Themselves", IEEE Computer, 42:9 (September 2009), pp. 46-55
  6. ^ 6.0 6.1 Ammann, Paul; and Offutt, Jeff; "Introduction to Software Testing", Cambridge University Press, 2008, ISBN 978-0-521-88038-1
  7. ^ Peters, Dennis K. Generating a Test Oracle from Program Documentation (M. Eng.论文). McMaster University. 1995. CiteSeerX: 10.1.1.69.4331 . 
  8. ^ Peters, Dennis K.; Parnas, David L. Generating a Test Oracle from Program Documentation (PDF). Proceedings of the 1994 International Symposium on Software Testing and Analysis. ISSTA. ACM Press: 58–65. [2014-07-30]. (原始内容 (PDF)存档于2015-09-24). 
  9. ^ Hoffman, Douglas; Heuristic Test Oracles页面存档备份,存于互联网档案馆), Software Testing & Quality Engineering Magazine, 1999
  10. ^ Mayer, Johannes; and Guderlei, Ralph; Test Oracles Using Statistical Methods页面存档备份,存于互联网档案馆
  11. ^ Hoffman, Douglas; Analysis of a Taxonomy for Test Oracles页面存档备份,存于互联网档案馆), Quality Week, 1998
  12. ^ Robinson, Harry; Finite State Model-Based Testing on a Shoestring页面存档备份,存于互联网档案馆), STAR West 1999

參見

  • Binder, Robert V. (1999). "Chapter 18 - Oracles" in Testing Object-Oriented Systems: Models, Patterns, and Tools, Addison-Wesley Professional, 7 November 1999, ISBN 978-0-201-80938-1