视频动态库测试及心得

发表于:2014-9-10 11:06

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

 作者:tianya2543    来源:51Testing软件测试网采编

  这几天一直在弄动态库测试,h给的写好的动态库--预处理模块的库。视频处理项目一部分,需要连接实际情况测试。
  需求:
  1.把实际相机连接到,并读取实时数据流,保存到双循环链表里面;
  2.测试背景建模的功能效果;
  3.预处理四个数据(图像)显示结果;
  4.测试实时处理多摄像头效果显示。
  前几天一直写摄像头数据接受模块,写的还算顺利,因为之前做过的项目自己写过DVR多通道的接受数据,而且还单独另写了读取网络摄像头的实时数据,所以一天搞定了,并显示原始图像正常。
  由于h给了接口文档说明,直接调用了动态库,update更新背景接口,测试用opencv显示没有多大问题,继续测试预处理模块、显示,也花了一天的时间,晚上因为搞定了,第二天连续写了双通道显示,也显示正常,不过下午发现了一个严重的错误,运行一段时间程序就崩溃了,郁闷了好几天,测试了好多办法,这个也是在测试程序中最头痛的事情。最终发现时因为memcpy函数接受目标和源数据大小不一致造成的,最主要原因应该是设备传输大小图像帧变化了,不知道什么原因,(猜测可能是海康DVR和不是海康摄像头兼容问题)。后面又遇到中断,是因为可能同时删除了两次,线程同步问题,加了锁,没了问题,不过后来我使用了拷贝构造函数,也没有问题。
  测试程序发现问题及总结:
  1. 首先要对你写的程序的功能要理解,知道你测试的代码的实现什么要求的;
  2.分析你代码里面有几个类及结构,了解大致功能及接口实现,逻辑结构;
  3.要分段测试,分模块检测,不然很麻烦;
  4.程序指针很麻烦,要清楚自己那些指针是干嘛的,特别类之间的传递,记录好,不然释放会导致你想不到的错误,调试半天没有结果;
  5.初始化问题要引起注意,不然类似4一样的郁闷;
  6.IDE提示很重要,不要舍弃每一个错误中断信息,可能就是要修改的地方,我的就是这个原因,之前没注意vs的中断提示错误,郁闷半天,实在没办法检查了vs中断错误,果然就是那个原因;
  7.最后,心态很重要,千万不要心浮气躁,慢慢来,相信会解决的,实在想不出出去散散心,回头可能想出来了。
  笔者在此测试库心得共勉一下,谢谢。
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

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

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

沪ICP备05003035号

沪公网安备 31010102002173号