学习C语言,怎样检验自己编程是否正确

3小时前 (20:20:05)阅读2回复0
雕刻瞎
雕刻瞎
  • 管理员
  • 注册排名6
  • 经验值431700
  • 级别管理员
  • 主题86340
  • 回复0
楼主

学习C语言,怎样检验自己编程是否正确

这个问题的本质是一个关于软件测试的问题,即如何测试软件?所以我先介绍下软件测试的通则,然后再针对C语言做些说明。

根据测试策略,主要有两种。一是单元测试,即把整个软件系统根据功能分为不同的单元,然后对各个单元进行测试;另外一种是集成测试,即把整个软件系统看做一个整体进行测试。

针对不同的测试策略,又有多重不同的测试方法,比如:

1、黑盒测试,即通过数据输入并观察数据输出,对比输出值与期待值的差异度来判断软件内部功能是否正确的一种方式。黑盒测试将被测软件软件内部视为不可见的黑盒,测试人员不需要知道软件内部的工作过程与实现原理。

2、白盒测试,白盒测试是相对于黑盒测试的另一种测试方法,它假设测试人员知道软件内部的工作过程与实现原理,甚至还可以查看源代码,目的是为了更深刻的认识软件,然后再根据对软件的认识进行有针对性的测试,以便更高效的发现问题。

3、静态测试,即通过静态分析的方法测试软件,它主要通过软件的静态的测试程序中算法是否正确,计算方式是否正确等手段完成测试。

4、动态测试,是与静态测试方法向对应的一种测试方法,因为它的主要目的是检测软件运行中出现的问题,所以被称之为动态测试。它的目的是检测软件运行是否正确,功能是否完善,效率是否满足要求等。

以上方法适合于所有语言,针对题主说的C语言,如果你写的是一些大型程序,可能会用到上面介绍的这些方法的组合;如果只是学习或者一些简单的程序,你可以写根据编写的程序的功能写一些测试用例,然后通过运行这些测试用例来检测你的程序是否正确。

下面是一个简单的例子,有一个comapre函数,为了测试它的正确性,针对三种情况写了不同的测试用例,通过运行测试用例发现在a=b的情况下程序运行不正确。如下图:

学习C语言,怎样检验自己编程是否正确

学习C语言,怎样检验自己编程是否正确

对于更复杂的情况只需要编写更多的测试用例即可。

0
回帖

学习C语言,怎样检验自己编程是否正确 期待您的回复!

取消
载入表情清单……
载入颜色清单……
插入网络图片

取消确定

图片上传中
编辑器信息
提示信息