[发明专利]一种软件平台的测试方法及系统有效
申请号: | 201810383115.1 | 申请日: | 2018-04-26 |
公开(公告)号: | CN108733562B | 公开(公告)日: | 2021-07-20 |
发明(设计)人: | 周诗钊;吴涛 | 申请(专利权)人: | 烽火通信科技股份有限公司 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 武汉智权专利代理事务所(特殊普通合伙) 42225 | 代理人: | 彭程程 |
地址: | 430000 湖北省武*** | 国省代码: | 湖北;42 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 软件 平台 测试 方法 系统 | ||
本发明公开了一种软件平台的测试方法及系统,软件平台包括至少一个被测组件,涉及通信技术领域。本测试方法包括以下步骤:测试框架通知被测组件创建组件实例,其中,组件实例将测试框架作为连接管理组件;测试框架与组件实例建立连接并进行测试。本发明无需通过连接管理组件建立连接,省略了调度机的实现,极大地降低了测试框架的设计与实现的复杂程度,有效提高对软件平台的测试效率。
技术领域
本发明涉及通信技术领域,具体是涉及一种软件平台的测试方法及系统。
背景技术
一些软件平台包括多个组件,组件是可复用且有明确上下文的模块,例如业务组件和连接管理组件等。软件平台以用户态线程的方式加载组件,每个组件占用一个用户态线程。这些基于用户态线程的软件平台的通信机制采用客户端/服务器(client/server)模型,其中,客户端和服务器通过连接管理组件建立连接,具体过程如图1所示:
a.服务器向连接管理组件注册服务器类型,此处服务器会直接挂一个回调函数到全局变量中,不发生真正的消息交互;
b.客户端向连接管理组件注册客户端类型,并请求服务器添加客户端;
c.连接管理组件向服务器发送新客户端请求,查询服务器是否接受这个新连接;
d.服务器通知连接管理组件接受此新连接;
e.连接管理组件向客户端通告服务器可用;
f.客户端向服务器注册;
g.注册成功,服务器回应注册消息;
h.客户端向连接管理组件返回步骤e中收到的消息,通告连接建立成功。
在对软件平台中的组件进行白盒测试时,按照上述通信机制,测试框架通过连接管理组件与被测组件建立连接,被测组件需要完成所有测试用例涉及到的通信协商,连接管理组件发出的进程内消息(Inner-Process Signals,IPS)并不会通过测试框架,而是直接被放到被测组件的任务队列中,被测组件的任务队列里包含了分别来自测试框架和连接管理组件的两种不同来源的IPS消息,同时,连接管理组件的任务队列包含了被测组件发布过来的IPS消息。测试框架严格按照测试用例规定的顺序向被测组件发布IPS消息以及检测被测组件发布的IPS消息。在这种情况下,测试框架必须要实现调度机来调度消息队列,才能保证被测组件收到的IPS消息严格符合用例规定的顺序,使得测试框架的设计与实现的复杂程度增大。
发明内容
针对现有技术中存在的缺陷,本发明的目的在于提供一种软件平台的测试方法及系统,无需通过连接管理组件建立连接,省略了调度机的实现,极大地降低了测试框架的设计与实现的复杂程度,有效提高对软件平台的测试效率。
本发明提供一种软件平台的测试方法,软件平台包括至少一个被测组件,所述方法包括以下步骤:
测试框架通知被测组件创建组件实例,其中,组件实例将测试框架作为连接管理组件;
测试框架与组件实例建立连接并进行测试。
在上述技术方案的基础上,所述测试框架将其组件ID作为连接管理组件的组件ID传入所述被测组件的创建参数打包函数,所述被测组件调用软件平台的创建组件函数创建所述组件实例。
在上述技术方案的基础上,所述组件实例作为服务器端或者客户端。
在上述技术方案的基础上,所述测试框架作为连接管理组件,向所述组件实例发送新客户端请求;
所述组件实例创建新客户端连接后,向所述测试框架发送连接创建回应消息;
所述测试框架作为客户端向所述组件实例申请注册;
注册成功后,所述组件实例回复注册成功消息给所述测试框架。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于烽火通信科技股份有限公司,未经烽火通信科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810383115.1/2.html,转载请声明来源钻瓜专利网。