一种视频合成正确性的自动化测试方法技术

技术编号:24946615 阅读:13 留言:0更新日期:2020-07-17 23:03
本发明专利技术公开了一种视频合成正确性的自动化测试方法。它在使用相同素材资源时,对新合成的视频和校验过的视频取帧,每一帧逐像素取其RGB值校验,自动验证新合成的视频是否符合预期,并将所有视频验证结果生成Allure报告。本发明专利技术的有益效果是:得到准确的比对结果;可灵活设置比对相似度;方便查看并分析问题;结果显示在Allure报告中便于访问;全程自动化执行,只需一键开始构建,解放人力。

【技术实现步骤摘要】
一种视频合成正确性的自动化测试方法
本专利技术涉及视频处理相关
,尤其是指一种视频合成正确性的自动化测试方法。
技术介绍
自动化验证所导出的视频的实际效果是否符合预期一直是自动化测试视频合成正确性的重要研究内容。经常需要对音视频引擎的改动或优化升级进行视频导出后的效果验证,人为的去判断两个视频是否完全一致,这种方法过于主观且容易出现差错。现在人们愈发在意视频效果的呈现,但是目前没有较成熟的视频比对技术,无法对两个视频自动化地进行详细的比对分析并输出比对结果。如果涉及视频内容过于丰富,颜色变换较为丰富,运用的转场/特效/素材较复杂,需要进行合成并比对的视频数量较大且存取需比对的视频较慢时,就容易在耗费了较多人力和时间的情况下,依旧会出现对比结果不准确的问题。
技术实现思路
本专利技术是为了克服现有技术中存在上述的不足,提供了一种省力且准确性高的视频合成正确性的自动化测试方法。为了实现上述目的,本专利技术采用以下技术方案:一种视频合成正确性的自动化测试方法,具体包括如下步骤:(1)上传与校验过的视频使用的相同的图片和视频资源素材至手机,按照相同的顺序导入相同的图片或视频资源并制作模板视频;(2)将制作好的模板视频导出至手机相册后,获取视频的路径,将该视频上传至云服务器;(3)根据模板视频名称拼接云服务器上对应的校验过的视频的路径,新合成视频路径和校验过的视频路径均打印至Allure测试报告中;(4)分别对新合成视频和校验过的视频进行取帧,设置取帧间隔秒数;(5)对按照间隔秒数取出来的帧画面中的每个像素的RGB值进行对比,并用红色标出不同的像素点,并保存差异图片至云服务器;(6)计算两张画面的所有像素的匹配率,若匹配率小于设置的相似度,则视为两张画面不一致,若大于设置的相似度,则视为两张画面相同;(7)所有取帧画面匹配率均大于设置的相似度,则两个视频相同,并输出Allure测试报告。本方法主要用于在使用相同素材资源时,对新合成的视频和校验过的视频取帧,每一帧逐像素取其RGB值校验,自动验证新合成的视频是否符合预期,并将所有视频验证结果生成Allure报告。本专利技术自动化导出新视频并从阿里云服务器获取已校验过的视频进行取帧比对,得到准确的比对结果;可灵活设置比对相似度;有差异的地方标红显示,方便查看并分析问题;每帧画面相似度、校验过的视频链接、新视频链接、取帧差异图片截图均显示在Allure报告中便于访问;视频的导出-上传阿里云-获取已校验过的视频-视频比对-输出结果-生成报告全程自动化执行,只需一键开始构建,解放人力。作为优选,在步骤(3)中,校验过的视频指的是经过人工检查认定为合格的标准视频,把这种标准视频存储在云服务器的指定路径下,即指定路径加上模板视频名称就可以定位一个视频,故而根据模板视频名称拼接出云服务器上对应的校验过的视频的指定路径;新合成视频指的是:每次执行自动化测试的时候,通过新包利用模板及原视频素材去合成新的带有模板特效的模板视频,每次执行用例跑出来的视频。作为优选,在步骤(4)中,具体操作方法为:(41)将新合成视频上传成功至云服务器后的链接为URL1、与之对应的校验过视频在云服务器的链接为URL2、预计的视频时长、取帧间隔秒数、预设的相似度作为参数传入compareFrames()函数中,该函数会分别调用getFrames()函数对新合成视频和校验过的视频进行取帧操作;(42)使用云服务器的取帧服务,根据预计的视频时长和取帧间隔秒数对视频进行取帧截图,并将截取到的图保存至列表List<InputStream>中,且在VideoFrames类中同时记录下所有取帧截图、取帧时间点、取帧截图云服务器url地址;(43)再将刚才取帧时得到的新合成视频VideoFrames对象、校验过视频VideoFrames对象和预设相似度传入compareFrames()函数进行视频帧比对操作。作为优选,在步骤(5)中,具体操作方法为:(51)分别取出新合成视频和检验过视频对象里的取帧截图列表,循环遍历列表中的截图,将对应时间点的两张截图和预设相似度作为参数传入CompareAndMarkDiff()函数中比对两张截图且标记差异点;(52)创建3个BufferedImages对象,分别为源图片、期望的图片、差异图片,并预设允许的Red、Green和Blue单个维度的最大像素差值,使用changeImageSize()函数修改期望的图片尺寸以适应源图片尺寸;(53)循环遍历列表中的截图,将源图片的每个像素点和期望图片的每个像素点的RGB值用getRGB()函数得出,再调用getRed()、getGreen()和getBlue()函数分别得出该源图片该像素点和期望图片该像素点在红绿蓝单个维度的像素值,且用abs()函数得出单个维度的像素差值;(54)若有任一单个维度的像素差值大于预设差值,则判定该像素点不一致,调用setRGB()函数将差异图片的该像素点标红,且差异点数量加1。作为优选,在步骤(6)中,具体操作方法为:保存差异图片后计算匹配率,用源图片宽高相乘得到总像素点数,用总像素点数减去差异点数再除以总像素点数得到两张图片的匹配率。本专利技术的有益效果是:得到准确的比对结果;可灵活设置比对相似度;方便查看并分析问题;结果显示在Allure报告中便于访问;全程自动化执行,只需一键开始构建,解放人力。附图说明图1是本专利技术的方法流程图。具体实施方式下面结合附图和具体实施方式对本专利技术做进一步的描述。如图1所述的实施例中,一种视频合成正确性的自动化测试方法,具体包括如下步骤:(1)上传与校验过的视频使用的相同的图片和视频资源素材至手机,按照相同的顺序导入相同的图片或视频资源并制作模板视频;(2)将制作好的模板视频导出至手机相册后,获取视频的路径,将该视频上传至云服务器;(3)根据模板视频名称拼接云服务器上对应的校验过的视频的路径,新合成视频路径和校验过的视频路径均打印至Allure测试报告中;校验过的视频指的是经过人工检查认定为合格的标准视频,把这种标准视频存储在云服务器的指定路径下,即指定路径加上模板视频名称就可以定位一个视频,故而根据模板视频名称拼接云服务器上对应的校验过的视频的指定路径;新合成视频指的是:每次执行自动化测试的时候,通过新包利用模板及原视频素材去合成新的带有模板特效的模板视频,每次执行用例跑出来的视频。(4)分别对新合成视频和校验过的视频进行取帧,设置取帧间隔秒数;具体操作方法为:(41)将新合成视频上传成功至云服务器后的链接为URL1、与之对应的校验过视频在云服务器的链接为URL2、预计的视频时长8、取帧间隔秒数2、预设的相似度作99%为参数传入compareFrames()函数中,该函数会分别调用getFrames()函数对新合成视频和校验过的视本文档来自技高网...

【技术保护点】
1.一种视频合成正确性的自动化测试方法,其特征是,具体包括如下步骤:/n(1)上传与校验过的视频使用的相同的图片和视频资源素材至手机,按照相同的顺序导入相同的图片或视频资源并制作模板视频;/n(2)将制作好的模板视频导出至手机相册后,获取视频的路径,将该视频上传至云服务器;/n(3)根据模板视频名称拼接云服务器上对应的校验过的视频的路径,新合成视频路径和校验过的视频路径均打印至Allure测试报告中;/n(4)分别对新合成视频和校验过的视频进行取帧,设置取帧间隔秒数;/n(5)对按照间隔秒数取出来的帧画面中的每个像素的RGB值进行对比,并用红色标出不同的像素点,并保存差异图片至云服务器;/n(6)计算两张画面的所有像素的匹配率,若匹配率小于设置的相似度,则视为两张画面不一致,若大于设置的相似度,则视为两张画面相同;/n(7)所有取帧画面匹配率均大于设置的相似度,则两个视频相同,并输出Allure测试报告。/n

【技术特征摘要】
1.一种视频合成正确性的自动化测试方法,其特征是,具体包括如下步骤:
(1)上传与校验过的视频使用的相同的图片和视频资源素材至手机,按照相同的顺序导入相同的图片或视频资源并制作模板视频;
(2)将制作好的模板视频导出至手机相册后,获取视频的路径,将该视频上传至云服务器;
(3)根据模板视频名称拼接云服务器上对应的校验过的视频的路径,新合成视频路径和校验过的视频路径均打印至Allure测试报告中;
(4)分别对新合成视频和校验过的视频进行取帧,设置取帧间隔秒数;
(5)对按照间隔秒数取出来的帧画面中的每个像素的RGB值进行对比,并用红色标出不同的像素点,并保存差异图片至云服务器;
(6)计算两张画面的所有像素的匹配率,若匹配率小于设置的相似度,则视为两张画面不一致,若大于设置的相似度,则视为两张画面相同;
(7)所有取帧画面匹配率均大于设置的相似度,则两个视频相同,并输出Allure测试报告。


2.根据权利要求1所述的一种视频合成正确性的自动化测试方法,其特征是,在步骤(3)中,校验过的视频指的是经过人工检查认定为合格的标准视频,把这种标准视频存储在云服务器的指定路径下,即指定路径加上模板视频名称就可以定位一个视频,故而根据模板视频名称拼接出云服务器上对应的校验过的视频的指定路径;新合成视频指的是:每次执行自动化测试的时候,通过新包利用模板及原视频素材去合成新的带有模板特效的模板视频,每次执行用例跑出来的视频。


3.根据权利要求1或2所述的一种视频合成正确性的自动化测试方法,其特征是,在步骤(4)中,具体操作方法为:
(41)将新合成视频上传成功至云服务器后的链接为URL1、与之对应的校验过视频在云服务器的链接为URL2、预计的视频时长、取帧间隔秒数、预设的相似度作为参数传入compareFrames()函数中,该函数会分别调用getFrames()函数对新合成视频和校验过的视频进行取帧...

【专利技术属性】
技术研发人员:姜珑珠顾湘余张子慧
申请(专利权)人:杭州趣维科技有限公司
类型:发明
国别省市:浙江;33

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1