TA的每日心情 | 开心 2015-1-5 20:07 |
---|
签到天数: 1 天 连续签到: 1 天 [LV.1]测试小兵
|
从毕业到公司来有一段时间了,来公司之后领导让我学做测试(之前公司没人做过测试)。公司让我自己学习,把测试这块撑起来(公司开始认识到测试的重要性了)。我先是学习了一些基本的理论,用一些常见的简单的例子进行了训练并且对一些工具进行了了解。对项目本身进行了了解,为测试做准备(来的时候项目处在概要设计阶段)。等到了真正进行对某一子系统的白盒测试时,却觉得没有思路进行。后来,考虑到项目的时间紧迫,公司买了一些参考代码,我也开始进行测试。功能测试是由开发人员自己做的,不过刚被项目经理训了,很次,只给出结果,结果还都是OK!报告里连测试方法都没有。
我们的项目是在linux环境下的,开发平台是windriver的workbench。
代码的规范检查是用pc_lint在windows下进行的,到现在都觉得对pc_lint的应用还是不够充分,尤其是对一些耦合度比较高的代码不知道怎么去测试一个工程。很多时候都是把某些同类文件放到一起,把它们要用的的定义声明之类的放到一个文件里,在SourceInsight里集成pc_lint来进行测试的。虽然麻烦,但还是进行完毕了,确实比较耗时间和精力。
在做覆盖测试的时候,头就更大了,以前的练习基本都是对某函数的参数直接进行控制,从而实现不同的路径。但是现在这个项目里,代码的逻辑很是复杂,也就是耦合度很高,里面有很多的条件编译(代码是适用于多平台的),这个觉得还是可以解决的,就是忽略一些没定义的部分先不管了(这样是不是会有一些风险?)。对于现在用的平台下,一个函数里的很多if语句经常会是对一些函数调用返回值的判定,例如(if(true==setmem(x,y,z)))。对于这种情况,小弟就不是很清楚了,不会控制其返回值。(现在所能做的就是先画出流程图,设置好检查点。)考虑的方法是,重新创建setmem函数,只让它返回true和false,不知道这样是否合适?不知道是否还有其它更好的办法,望不吝赐教!
以上一些说法,如有不当之处,还请各位批评指正! |
|