51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 619|回复: 0
打印 上一主题 下一主题

[讨论] 视频动态库测试及心得

[复制链接]
  • TA的每日心情
    开心
    2022-9-21 15:33
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]测试小兵

    跳转到指定楼层
    1#
    发表于 2023-4-12 10:25:54 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
      视频动态库测试及心得
      这几天一直在弄动态库测试,h给的写好的动态库--预处理模块的库。视频处理项目一部分,需要连接实际情况测试。
      需求:
      1.把实际相机连接到,并读取实时数据流,保存到双循环链表里面;
      2.测试背景建模的功能效果;
      3.预处理四个数据(图像)显示结果;
      4.测试实时处理多摄像头效果显示。
      前几天一直写摄像头数据接受模块,写的还算顺利,因为之前做过的项目自己写过DVR多通道的接受数据,而且还单独另写了读取网络摄像头的实时数据,所以一天搞定了,并显示原始图像正常。


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


    分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
    收藏收藏
    回复

    使用道具 举报

    本版积分规则

    关闭

    站长推荐上一条 /1 下一条

    小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

    GMT+8, 2024-11-23 04:46 , Processed in 0.060602 second(s), 23 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

    快速回复 返回顶部 返回列表