本发明涉及一种数据测试系统及方法,具体涉及一种针对媒资平台的数据自动化测试系统及测试方法。
背景技术
目前的网络智能电视,很多都会从互联网媒资平台(例如腾讯、爱奇艺、芒果等)上获取视频数据。因此,各智能电视厂家都会构建自身的媒资检索平台,用于提供视频的检索和播放服务。在媒资检索平台构建时,测试人员需要在电视设备上面采用语音人工检测媒资视频数据是否正确并返回到电视终端。
由于媒资平台的视频数据过于庞大(一般超过几十万条媒资视频数据),测试人员无法每一条媒资视频数据逐一都测试,只能抽取部分热门视频数据进行人工测试,造成测试无法覆盖所有的媒资视频数据。所以希望可以对现有所有媒资视频数据逐一进行测试,检测接口是否能够返回正确的数据,显然目前人工测试方法无法达到这样的需求—几十万媒资视频数据逐一测试。利用现有技术对所有媒资视频数据逐一自动化测试是极为迫切的。
技术实现要素:
本发明的目的在于提供一种能够每天定时测试媒资平台的视频数据,并定时反馈准确率、错误率报表信息的自动化测试系统及测试方法。
本发明是这样实现的:
一种媒资平台数据自动化测试系统,包括数据自动获取模块、数据分类模块、数据校验模块、校验结果保存模块;
数据自动获取模块,是利用定时器每天定时到媒资数据库中查询媒资视频数据,具体是,现有媒资视频数据全部存储在mongodb数据库中,需要从数据库取出来,同时利用mongodb特有查询语句(db.chiq_base_info_new1.find({}))查询出所有的媒资视频数据,并返回封装到媒资平台数据自动化测试系统中的数据自动获取模块。自动化获取模块利用java中的collection(集合)存储从数据库(mongodb)中返回的数据
其中,mongodb是一种以key-value形式存储的非关系型数据库;
db.chiq_base_info_new1.find({})具体表示:查询mongodb数据库chiq_base_info_new1表中所有的存储数据。
数据分类模块
根据媒资视频数据的type属性不同,分别归类成不同媒资平台的视频数据,比如腾讯视频数据、爱奇艺视频数据、芒果视频数据等;
提高数据测试的粒度,将相同视频数据根据在不同媒资平台出现的次数进行拆分,比如奔跑吧兄弟这档综艺节目,可能腾讯有其资源、爱奇艺也有其资源、芒果也有其资源,就需要把这条视频数据一拆为三,同时添加到腾讯视频数据集合、爱奇艺视频数据集合、芒果视频数据集合中,如果只有其中2个,那么就一拆为二,依此类推。
根据视频数据的mode属性不同,分为movie(电影)、variety(综艺)、tv(电视剧)等,再根据不同媒资平台进行细分,如a平台的电影视频数据、a平台的综艺视频数据、a平台的电视剧视频数据、b平台的电影视频数据等等。
数据校验模块
根据输入的测试信息,通过名称和季数两个维度进行测试校验,提高测试精度;
其中,输入的测试信息,包括语音测试信息和文字测试信息。
以语音测试信息为例,当用户说“奔跑吧兄弟”,这种根据名称维度测试的情况,如果媒资检索接口没有返回”奔跑吧兄弟”的这部综艺,则认为这个接口返回的信息是错误的,记录到文件中,通知媒资检索接口人员改进接口,这种情况可以返回”奔跑吧兄弟第一季”,也可以返回”奔跑吧兄弟第二季”。
当用户说”奔跑吧兄弟第二季”这种根据季度测试的情况,如果媒资检索接口没有返回”奔跑吧兄弟第二季”这部综艺,即使接口返回了“奔跑吧兄弟第一季”这系列的视频数据,测试结果仍然是错误的。
校验结果保存模块
利用文件系统保存测试返回来的结果信息,保证数据结果的持久化。
本发明还提供了一种媒资平台数据自动化测试方法,是利用本发明提供的媒资平台数据自动化测试系统,并具体包括:
步骤一、数据获取
利用数据自动获取模块,利用定时器每天定时从媒资数据库中获取媒资数据。
其中,定时器定时,可以是利用springscheduleder凌晨执行任务;
从媒资数据库中获取媒资数据,可以是从mongo数据库chiq_base_info_new1中拉取所有的媒资数据。
步骤二、媒资数据分类
系统自动把媒资数据根据媒资平台的不同分为不同媒资平台的数据列表;
步骤三、媒资数据校验
系统把分类好的数据按照不同测试维度(名字、季数),通过输入检索信息(如名字、季数),通过媒资检索接口进行检索,并由媒资检索接口返回检索结果,判断检索结果是否正确,从而可以对检索结果进行校验。
例如,可以利用http访问工具(resttemplate)访问媒资检索接口(http://chiq5.smart-tv.cn/chiq_webservice/services)来实现上述校验过程。其中,媒资检索接口:http://chiq5.smart-tv.cn/chiq_webservice/services,是申请人自有的视频检索接口,当输入不同的视频名称、季数进去,可以返回不同的视频数据结果,媒资平台数据自动化测试系统就是验证这个接口返回的数据是否正确。媒资检索接口实质就是一个数据检索、匹配、输出的系统,其工作原理和工作方式对于本领域技术人员来说是常规的。
步骤四、媒资数据结果存储
系统利用流工具把结果写入系统文件。
其中,结果包括每个测试信息返回的值,以及总的测试信息,总的测试信息包括测试总数、成功数量、请求超时数量及各自占比。
本发明提供的媒资平台数据自动化测试系统及测试方法,通过4个功能模块的整体结合,解决人工效率低下问题,同时保证了测试数据的高效性以及准确性,同时也尽量提高了测试的粒度以及精确性。
附图说明
图1为本发明一个实施例中媒资平台数据分类模型;
图2为本发明一个实施例中媒资平台数据自动化测试系统的示意图;
图3为本发明一个实施例中媒资平台数据自动化测试方法的示意图。
具体实施方式
下面结合附图和具体实施例对本发明作进一步的说明。
实施例1
如附图2所示,一种媒资平台数据自动化测试系统,包括数据自动获取模块、数据分类模块、数据校验模块、校验结果保存模块;
数据自动获取模块,是利用定时器每天定时到媒资数据库中查询媒资视频数据,具体是,查询(db.chiq_base_info_new1.find({});)所有的媒资视频数据。
数据分类模块
如附图1所示,根据媒资视频数据的type属性不同,分别归类成不同媒资平台的视频数据,比如腾讯视频数据、爱奇艺视频数据、芒果视频数据等;
提高数据测试的粒度,将相同视频数据根据在不同媒资平台出现的次数进行拆分,比如奔跑吧兄弟这档综艺节目,可能腾讯有其资源、爱奇艺也有其资源、芒果也有其资源,就需要把这条视频数据一拆为三,同时添加到腾讯视频数据集合、爱奇艺视频数据集合、芒果视频数据集合中,如果只有其中2个,那么就一拆为二,依此类推。
根据视频数据的mode属性不同,分为movie(电影)、variety(综艺)、tv(电视剧)等,再根据不同媒资平台进行细分,如a平台的电影视频数据、a平台的综艺视频数据、a平台的电视剧视频数据、b平台的电影视频数据等等。
数据校验模块
根据输入的测试信息,通过名称和季数两个维度进行测试校验,提高测试精度;
其中,输入的测试信息,包括语音测试信息和文字测试信息。
以语音测试信息为例,当用户说“奔跑吧兄弟”,这种根据名称维度测试的情况,如果媒资检索接口没有返回”奔跑吧兄弟”的这部综艺,则认为这个接口返回的信息是错误的,记录到文件中,通知媒资检索接口人员改进接口,这种情况可以返回”奔跑吧兄弟第一季”,也可以返回”奔跑吧兄弟第二季”。
当用户说”奔跑吧兄弟第二季”这种根据季度测试的情况,如果媒资检索接口没有返回”奔跑吧兄弟第二季”这部综艺,即使接口返回了“奔跑吧兄弟第一季”这系列的视频数据,测试结果仍然是错误的。
校验结果保存模块
利用文件系统保存测试返回来的结果信息,保证数据结果的持久化。
实施例2
本实施例提供了一种媒资平台数据自动化测试方法,具体包括4步:
步骤一、媒资数据获取
系统利用springscheduleder凌晨执行任务,从mongo数据库chiq_base_info_new1中拉取所有的媒资数据
步骤二、媒资数据分类
系统自动把媒资数据根据媒资方分为腾讯、爱奇艺、芒果数据列表
步骤三、媒资数据校验
系统把分类好的数据按照不同测试维度(名字、季数),利用http访问工具(resttemplate)访问媒资检索接口(http://chiq5.smart-tv.cn/chiq_webservice/services)
步骤四、媒资数据结果存储
系统利用流工具把结果写入系统文件,结果文件部分内容如下:
搜索片名搜索类型结果返回id返回片名
瓶中信movietrue5a44ed284728f203d9408047瓶中信
美容针movietrue5a44ee244728f2099ea15317美容针
侠盗联盟movietrue5a44ee254728f2099ea15347侠盗联盟
校花诡异事件movietrue5a44ee324728f2099ea155bf校花诡异事件
中国功夫史-第二季moviefalse5a452f794728f2099ea449bb功夫星猫第二季
中国功夫史movietrue5a44f13c4728f2099ea21d22中国功夫史
《好片两部半》第18期:好电影不能输在名字上movietrue
5a44f1fc4728f2099ea23b88《好片两部半》第18期:好电影不能输在名字上
《好片两部半》28:宅男拯救全世界movietrue5a44f2014728f2099ea23c3a《好片两部半》28:宅男拯救全世界
电影放第四季第5期:速激燃爆荷尔蒙movietrue5a44f28f4728f2099ea25038电影放第四季第5期:速激燃爆荷尔蒙
电影放第四季movietrue5a44f2904728f2099ea25061电影放第四季
全球电影侦察20150916movietrue5a44f2af4728f2099ea25473全球电影侦察20150916
全球电影侦察20150506movietrue5a44f2b54728f2099ea25566全球电影侦察20150506
全球电影侦察20160120movietrue5a44f2b64728f2099ea25576全球电影侦察20160120
全球电影侦察20150422movietrue5a44f2b94728f2099ea255cc全球电影侦察20150422
全球电影侦察20151118movietrue5a44f2b94728f2099ea255d2全球电影侦察20151118
全球电影侦察20150408movietrue5a44f2b94728f2099ea255dd全球电影侦察20150408
全球电影侦察20160323movietrue5a44f2bb4728f2099ea25617全球电影侦察20160323
……
戏曲varietyfalse5ab8997c969f987c7d029382戏曲动漫
中国新说唱varietytrue5b8679c4c5ce6c7acd8930de中国新说唱
真实故事varietyfalse5b07b145969f98645106a5c0真实故事
总数成功数量成功占比请求超时数量超时占比
269792512393.12%00.00%
类型总数成功数量成功占比
tv5332486191.17%
movie174791658494.88%
variety4168367888.24%
尽管这里参照本发明的解释性实施例对本发明进行了描述,上述实施例仅为本发明较佳的实施方式,本发明的实施方式并不受上述实施例的限制,应该理解,本领域技术人员可以设计出很多其他的修改和实施方式,这些修改和实施方式将落在本申请公开的原则范围和精神之内。