一种基于iptv系统的测试装置和方法
技术领域:
:1.本发明涉及计算机应用领域,具体而言,涉及一种基于iptv系统的测试装置和方法。
背景技术:
::2.为了方便更多的用户在家里就能通过网络电视进行观看医生实时直播医学知识以及病例分析等,同时可以通过电话与正在直播的医生进行问诊、交流,在家用的iptv盒子中可以支持的视频问诊应用软件,并搭建了lws系统(包括服务器与客户端两部分)来支持基于iptv系统中对视频问诊应用软件的功能的应用。其中,lws服务器(localwebserver)是一个基于web的应用程序系统,主要承载着会员管理、交易认证、视频点播、视频问诊、预约挂号、健康检测等客户端的功能在服务端的支撑。然而应用程序系统应用在电视盒子上,需要遵守电视端作为客户端的应用习惯。特别是在新功能上线时,既需要在测试的环境中运行,又需要对接真正的生产环境(如:真实的直播、真实的医生终端)。因此,需要在真实的生产环境中实现测试功能。3.传统的实现方式,直接在应用的桌面推荐位上配置测试环境,增加了应用系统稳定性的风险;并且桌面推荐位的数量是有限,不方便配置更多的测试入口。同时,还会使不知情的用户在不知不觉的情况下,进入到了新测试功能模块的风险;若操作不当,会对生产环境造成巨大影响,导致系统崩溃。技术实现要素:4.本发明的主要目的,是解决测试环境脱离实际环境的问题,将测试流程嵌入实际的生产环境,获得准确的测试结果,同时不影响生产环境的正常运作。5.第一方面,为实现上述目的,本技术提供了一种基于iptv系统的测试装置,其特征在于,包括以下模块:6.测试配置管理模块:用于定义和管理测试信息;测试信息包括:测试入口信息、测试流程信息和预设测试结果;其中的测试入口信息包括:测试名称与id、生效周期、参与测试的用户标识;测试流程信息包括:测试环境接口流程、测试环境数据库流程;7.测试环境接口配置模块:接收来自测试配置管理模块的配置请求,生成测试环境接口流程控制开关;8.测试环境数据库配置模块:接收来自测试配置管理模块的配置请求,生成测试环境数据库流程控制开关;9.测试结果分析模块:接收来自测试配置管理模块的预设测试结果,与实际测试结果进行比较,生成分析结果。10.测试入口模块,用于接收来自测试配置管理模块的配置请求,生成用户测试入口;11.进一步的,测试入口模块嵌于生产环境界面的用户入口之后,测试环境校验成功后,测试入口模块在生产环境界面展示。12.进一步的,测试环境接口流程控制开关中提供缓存子模块,保存多个接口返回的数据,生成下一个接口的业务请求。13.测试入口模块接入的接口包括生产环境接口和测试环境接口,通过测试环境接口流程控制开关确定流程。14.同时,测试入口模块发起的请求携带测试标注,在生产环境接口完成测试操作后,依据测试标注返回接口流程控制开关。15.另一方面,本发明提供了一种基于iptv系统的测试方法,包括以下步骤:16.接受来自用户测试入口的测试业务请求,对测试业务请求根据测试流程信息进行测试流程控制,将预设测试结果与实际测试结果进行比较,生成分析结果。17.其中的测试入口信息、测试流程信息和预设测试结果通过测试配置管理进行配置;测试入口信息包括:测试名称和id、生效周期、参与测试的用户标识;测试流程信息包括:测试环境接口流程、测试环境数据库流程;其中测试业务请求中包括参与测试的用户标识。18.进一步的,获取测试入口信息,在生产环境界面生成用户测试入口,用户测试入口嵌于生产环境界面的用户入口之后,当测试环境校验成功后,在生产环境界面展示用户测试入口。19.进一步的,测试环境接口流程提供接口返回的数据的存储和计算,生成数据请求。20.进一步的,用户测试入口接入的接口包括生产环境接口和测试环境接口,通过测试环境接口流程控制确定流程。21.进一步的,从用户测试入口发起的测试请求携带测试标注,生产环境接口中根据测试标注进行判断,确定是否在生产环境中处理完成后进入测试环境接口流程。22.根据本发明,可以实现在新功能上线时,对测试的功能需要的接口、数据库进行选择和配置,可以结合真实的生产环境对需要测试的流程和接口和数据库进行逐步测试,同时对测试结果进行验证分析,提高了测试的有效性。同时,虽然结合了生产环境,但由于生产环境和测试环境的相对分离,也不影响生产环境的正常运作,保证了系统的稳定性。附图说明23.图1是根据本发明实施例的一种基于iptv系统的测试装置结构图;24.图2是根据本发明实施例的一种基于iptv系统的测试方法流程图;25.图3是根据本发明实施例的一种基于iptv系统的测试方法逻辑图。具体实施方式26.下面结合说明书附图对本发明的具体实现方式做一详细描述。27.本发明提供一种基于iptv系统的测试装置,用于在基于iptv系统的应用软件及相关系统在生产环境的正式运营过程中,嵌入测试流程,在基于生产环境的正式数据的前提下获得测试结果,与预期的测试结果进行比对和分析,以增加测试的有效性,同时以嵌入的方式、对测试入口的控制,也不影响该应用软件在生产环境的正常运营。28.图1是本发明实施例中一种基于iptv系统的测试装置结构图,如图所示,包括以下模块:29.1、p100测试配置管理模块:其中有部分部署在服务器端、部分部署在客户端,包括配置入口和数据管理子模块。30.配置入口部分部署在客户端,支持浏览器或者应用程序的模式,提供给管理人员或者测试人员进行对数据管理子模块的交互,例如web平台、手机应用平台,通过交互页面配置数据管理的内容,实现对测试信息的定义,另一方面,也可以不通过交互的方式,直接由程序人员直接在服务器的配置文件中定义变量或者协议进行管理。例如:lws的管理后台提供配置管理的功能,包括测试配置管理模块的配置入口和数据管理子模块。31.在实质的应用中,在lws管理后台新增相应的操作页面,供开发人员与测试人员进行操作;在管理后台提供相应接口,供开发测试人员新增测试项目的数据配置,并且会根据入口类型进行归类;已归类的测试项目数据进行统计分析的结果。32.数据管理子模块是测试配置管理模块的核心部分,部署在服务器端,用于管理测试信息的规范、内容。测试信息包括:测试入口信息、测试流程信息和预设测试结果;33.1)测试入口信息包括:测试名称与id、生效周期、参与测试的用户标识;这类信息在数据管理子模块进行定义和管理,用于控制在生产环境中,测试环境的校验成功后,展示测试入口。测试环境的校验有多种方式,如具有参与测试的用户标识的用户在生产环境成功登录,且在对应的生效周期内,可见到展示测试名称的测试入口。34.在测试入口提交测试的数据后,测试id作为参数标识该次测试。除此之外,测试入口信息还可以包括:入口类型、入口子类型以及权重。入口类型为进行哪种类型的测试(包括:进入测试服、测试专辑、测试活动);入口子类型表示是哪一期专辑或哪一个活动,当入口类型为测试服时,隐藏入口子类型选项。35.测试入口可以在lws的管理后台,点击某个按钮,进入测试入口配置界面进行定义,当选择和填写完成后,保存,即生成相应的测试信息,实现测试项目的配置。36.测试配置完成后,即在lws应用系统的生产环境中新建了一个测试子系统,即p110测试入口。37.当生产环境的客户端加载数据时,获取已配置成功的对应的测试数据。进行测试环境的校验成功后,根据配置的要求,展示在生产环境中不同的场景,例如:lws客户端首页、用户登录成功界面等。38.测试环境的校验不限于具有参与测试的用户标识的用户在生产环境登录,还支持用户访问lws客户端首页(或指定页面),通过按遥控器数字键,录入特殊指令,特殊指令与预设的密码(测试标识)进行比较,如果两者相等,则表示校验成功。此时通过lws客户端向lws服务器发通知,告知并进入测试入口,即测试子系统。39.测试子系统页面可以是由多个table表格组成的布局,每个table表格均为指定功能(首页、活动、专辑等)的入口;table表格里的内容是在页面加载完成后,通过异步方法向管理后台请求已经配置完成的测试项目来填充。40.根据管理后台返回的数据,按类别填入不同的table,table会根据测试项目的个数进行动态的生成一个个单元格,然后再具体的测试项目的信息设置为单元格的属性,进行逐行填充;如果遇到某种类型的测试项目比较多,一行显示不全时,就行换到第二行,依次类推;通过这种方式确保每种类型的测试项目,都占独立table。41.当用户点击测试子系统中的某个单元格子时,会根据当前table和单元格子的属性,来启动相应的系统,进行接下来的测试工作。42.由于本发明应用于iptv系统,客户端的信息展示需要支持电视屏幕的展示习惯,采用table的方式进行页面布局,更方便可控。43.2)测试流程信息包括:测试环境接口流程、测试环境数据库流程;44.测试环境接口流程:在lws的管理后台定义该测试项目对应的测试环境接口流程,在本发明的装置中,原生产环境中的接口与需要测试的测试环境接口并存,在测试流程信息中定义不同版本的测试项目中,不同的入口对应不同的接口,对应不同的地址。对于一个功能可能对应多个接口,其中包括在测试环境的接口和生产环境的接口获取不同的数据,其逻辑关系即为测试环境接口流程,在测试配置管理模块中进行配置,在测试环境接口配置模块中实现。45.测试环境数据库流程:在lws的管理后台定义该测试项目对应的测试环境数据库流程,在本发明的装置中,需要测试的测试环境接口可以接入测试的数据库环境,也可以接入生产环境的数据库,在测试流程信息中定义不同版本的测试项目中,不同的接口,对应不同的数据库地址,甚至不同的用户标识在同一个接口中对应不同的数据库环境。对于一个功能接口,其中包括在测试环境的数据库和生产环境的数据库对数据进行读取和保存,其逻辑关系即为测试环境数据库流程,在测试配置管理模块中进行配置,在测试环境数据库配置模块中实现。46.3)预设测试结果:在lws的管理后台定义该测试项目对应测试结果,例如,边界状态、特定情况对应的测试结果:47.例如:不同的用户类型(普通用户、vip用户)指定不同的医生类型(专家级医生、普通门诊医生)产生的费用的测试,在测试配置管理模块中可以进行对测试结果进行预测。48.2、p120测试环境接口配置模块:接收来自测试配置管理模块的配置请求,生成测试环境接口流程控制开关;49.在具体的实现中,在本发明实施例中提到的lws的管理后台中定义了测试环境接口流程的数据并配置成功后,测试环境接口配置模块根据测试环境接口流程的数据生成测试环境接口流程控制开关,测试环境接口流程控制开关配置不同的请求中要处理的接口的地址,功能测试涉及接口也可能在生产环境、测试环境或者多个环境接口的混合使用。在测试环境接口流程控制开关配置每个功能测试的接口的搭配规则,并对数据请求进行指向。50.当用户通过测试子系统,点击了一项测试项目,即向测试环境接口流程控制开关发起请求。测试环境接口流程控制开关根据搭配规则,将请求指向不同的接口。测试环境接口流程控制开关支持对一个功能配置多个的接口,测试环境接口流程控制开关中提供缓存子模块,保存多个接口返回的数据,为下一次接口请求提供数据。51.在本方法中,生产环境中加入测试环境的适配机制。即在生产环境的接口中增加对测试场景的处理。例如,在测试入口模块发起的请求中携带测试标注,通过测试环境接口流程控制开关,接入生产环境接口后,依据测试标注确定下一步流程返回接口流程控制开关,而不是生产环境中的下一步处理。52.例如,测试入口为测试问诊费用的计算与扣费,专家医生的信息为生产环境信息,收费标准为测试环境信息,从测试入口进入该专家医生的问诊测试后,测试环境接口流程控制开关控制该流程从生产环境接口中获取专家医生的信息返回后,在测试环境接口流程控制开关中生成并向测试环境接口请求计算费用,获得费用返回。53.3、p130测试环境数据库配置模块:接收来自测试配置管理模块的配置请求,生成测试环境数据库流程控制开关;54.在具体的实现中,在本发明实施例中提到的lws的管理后台中定义了测试环境数据库流程的数据并配置成功后,测试环境数据库配置模块根据测试环境数据库流程的数据生成测试环境数据库流程控制开关,测试环境数据库流程控制开关配置不同的请求中要处理的数据库的信息,如库名、表名、存储过程名称,功能测试涉及数据库也可能在生产环境中实际使用的数据库,也可能是部署在生产环境的数据库中的实际使用数据库的一个模拟库(即测试数据库),在一个接口对应的功能处理中,可能需要读写生产环境和测试环境的数据库。在测试环境数据库流程控制开关配置每个功能测试的接口可配置的数据库配置。55.例如:测试入口为测试问诊费用的计算与扣费的实施例中,在测试环境进行扣费测试,记录支付宝等真实的扣费操作的记录表为生产环境数据库,记录本次扣费操作的日志为测试环境数据库。在测试接口的实现中,根据配置,不同的操作访问不同的地址的数据库。56.4、p140测试结果分析模块:接收来自测试配置管理模块的预设测试结果,与实际测试结果进行比较,生成分析结果。57.例如,vip用户指定专家级医生进行医生问诊产生的需要支付的费用,是否与在测试配置管理模块中配置的测试结果一致,并对其测试结果进行分析。58.在本发明的实施例中,在p100测试配置管理模块管理p110测试入口的展示,在p120测试环境接口配置模块和p130测试环境数据库配置模块中生成针对测试项目的测试环境接口流程控制开关和测试环境数据库流程控制开关,在控制开关中确定在什么时候访问哪一个接口或者数据库的控制流程,并在p140测试结果分析模块中进行测试结果的分析。通过本装置,实现在新功能上线时,结合真实的生产环境对测试环境的流程和结果进行测试和验证,提高了测试的有效性,同时也不影响生产环境的正常运作。59.图2是根据本发明实施例的一种基于iptv系统的测试方法流程图,如图2所示,步骤s200的测试环境接口流程,接收来自用户测试入口的测试业务请求;60.接下来,在步骤s210中,根据测试流程信息对测试业务请求进行测试流程控制。在本发明中,由于业务需求,需要将测试功能嵌入生产环境中进行测试,因此测试入口的接入包括生产环境接口和测试环境接口,对接口的选择和控制则通过步骤s211测试环境接口流程来确定;其对应的数据库也包括生产环境数据库和测试数据库,因此采用步骤s212测试环境数据库流程来管理对数据库的操作。在一次测试过程中,步骤s211和步骤s212会产生多次循环执行,每次执行的结果数据在测试流程中进行存储和重复使用。61.测试流程控制的逻辑如图3所示:62.在步骤s300中,获取来自测试入口的数据请求后,进行测试环境接口流程判断,确定下一步流程是进入测试接口或者生产环境接口。63.当需要在生产环境中进行测试功能时,由于其流程与正常的生产环境不同,需要在完成某一个处理后,退出当前接口,回到测试环境接口流程,因此,在本发明中,需要对生产环境接口进行一个统一的处理,即增加测试场景的判断,在本发明中,在测试入口模块发起的测试请求携带测试标注,生产环境接口检测到测试标注即可进行判断,确定是否在生产环境中处理完成后返回至测试环境接口流,即步骤s310测试标识判断,在生产环境中判断该请求为测试,处理完成后,返回至测试环境接口流程。64.在测试接口的处理中,访问的数据库可以选择测试环境数据库和生产环境数据库,在步骤s320测试环境数据库流程中进行判断。65.测试环境接口流程中还提供接口返回的数据的存储和计算,生成下一步骤的数据请求,支持整个测试流程控制的多次调用,并最终在测试接口得出测试结果,将预设测试结果与实际测试结果进行比较,生成分析结果;66.以上步骤中涉及到的测试入口信息、测试流程信息和预设测试结果通过测试配置管理进行配置;配置的测试入口信息包括:测试名称和id、生效周期、参与测试的用户标识。其中,在生产环境的终端,获取测试入口信息,在生产环境界面生成用户测试入口。需要注意的是,用户测试入口嵌于生产环境界面的用户入口之后,当测试环境校验成功后,在生产环境界面展示所述用户测试入口。67.通过本发明的测试方法,实现在新功能上线时,对实现功能需要的接口、数据库进行选择和配置,可以结合真实的生产环境对需要测试的流程和功能进行逐步测试,对结果进行验证分析,提高了测试的有效性。同时,虽然结合了生产环境,但由于生产环境和测试环境的相对分离,也不影响生产环境的,保证了系统的稳定性。68.以上公开的仅为本发明的几个具体实施例,但是,本发明并非局限于此,任何本领域的技术人员能思之的变化都应落入本发明的保护范围。当前第1页12当前第1页12
转载请注明原文地址:https://win.8miu.com/read-250102.html