没有输入参数的接口函数如何设计测试用例?

发表于:2008-10-22 16:46

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:VisualUnit    来源:51Testing论坛

转载请保留:作者:VisualUnit  出处链接:http://bbs.51testing.com/thread-130049-1-2.html

  对于函数测试来说,一个用例,就是设定输入,执行程序,判断输出是否符合预期。

  可能输入包括:参数、需读的成员变量、需读的全局变量、内部输入(调用子函数获得的输入);

  可能输出包括:返回值、输出参数、被写的成员变量、被写的全局变量,内部输出(在程序执行过程中判断的中间输出)、动作(例如需判断程序在某种输入下是否调用了某个函数)。

  简单来说,输入就是程序执行前或执行过程中读取的外部数据,输出就是程序所改写的数据。

  了解了这些,就不会对没有参数、没有返回值如何测试产生疑问了。

  测试没有参数的函数,它可能还有别的输入,例如全局变量,成员变量,或调用子函数获得的输入(这个要使用工具才能做到),只要函数需读取的,都应该设定初始值,如果完全没有,没有输入也是一种输入,照样测试就是了。同样道理,输出也不仅仅是返回值,没有返回值还可能修改了全局变量什么的,这些也是要判断的输出。

  但是,单元测试应该测试哪些比较复杂的程序,而不是只测试接口。对于只是读写一两个数据的接口,没什么好测试的,例如“DWORD GetInterfaceVersion ();//获取解码器版本号”,应该只是读取一个全局变量并返回,没有什么测试意义,要测的话,先设定那个全局变量的值,也一样测试,例如:

  输入:SetInterfaceVersion (1234); //调用其他函数完成初始化,这个是外部输入,不是内部输入。

  输出:ASSERT(GetInterfaceVersion () == 1234);

  不过这样做没什么意义。

《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号