一种Elink的自动化测试方法及系统与流程

文档序号:17585186发布日期:2019-05-03 21:15阅读:831来源:国知局
一种Elink的自动化测试方法及系统与流程

本发明涉及一种电信测试,尤其涉及一种elink的自动化测试方法及系统。



背景技术:

elink是电信制定的规范,每次电信项目测试elink都是必测项,平台测试项较多,没有自动测试方法,全部需要人工操作。比如需要人工替换json命令文档中的设备mac地址;在页面上粘贴复制json命令并下发,然后人工查阅日志,复制需要的信息并在网站上进行base64解码。人工操作的缺陷如下:

(1)新人需要学习elink相关知识后方可进行测试;

(2)每轮测试需要机械式的重复操作,耗时长且枯燥;

(3)重复次数较多,有时手动会出现误操作导致测试结果不准确;

(4)测试结果不能自动保存,多轮测试不利于对比输出结果。



技术实现要素:

为解决现有技术中的问题,本发明提供一种elink的自动化测试方法及系统。

本发明elink的自动化测试方法包括如下步骤:

s1:开始,获取待测设备的mac地址;

s2:通过浏览器登录测试管理平台,并保存测试时间;

s3:判断测试项是否全部完成,如果是,测试完成,结束;如果否,执行步骤s4;

s4:下发组装好的json命令;

s5:查询最新的平台日志,提取返回参数并解码,然后写入本地日志;

s6:写入完毕,测试项数加1,然后执行步骤s3。

本发明作进一步改进,步骤s1中,还包括mac地址判断步骤:判断用户输入待测设备的mac地址是否可用,如果mac地址带分隔符或者长度不正确,则提示并要求用户重新输入。

本发明作进一步改进,在步骤s2中,登录的处理过程为:采集到正确的mac地址后,自动拉起谷歌浏览器,并访问测试管理平台页面,用户输入登录信息登录测试管理平台,测试管理平台检测模块周期性检测当前url,通过比对当前url与登录成功后的url来判断是否登录成功。

本发明作进一步改进,在步骤s4中,通过xpath在动态渲染页面定位元素,模拟人工操作完成json命令下发,并将页面返回信息打印到窗口中,查看json命令下发是否成功。

本发明作进一步改进,在步骤s5中,提取返回参数并解码的处理方法为:通过xpath定位到详情内容区域,通过正则表达式将返回参数信息截取出来,截取后的数据类型为列表,然后将列表转换成字符串;最后通过base64解码函数将字符串解码,以便输出查看。

本发明作进一步改进,将测试所需的json命令全部写到字典中,测试过程中,获取各个测试项名称及命令,存储到列表中。

本发明作进一步改进,步骤s5中,写入本地日志时,将最新日志在原日志的基础上追加写入。

本发明还提供一种实现所述elink的自动化测试方法的系统,包括,

获取模块:获取待测设备的mac地址;

检测模块:检测管理平台是否登录成功;

时间模块:用于记录测试时间;

判断模块:判断测试项是否全部完成,如果是,测试完成,结束;如果否,执行命令下发模块;

命令下发模块:下发组装好的json命令;

日志生成模块:查询最新的平台日志,提取返回参数并解码,然后写入本地日志;

测试项计数模块:写入完毕,测试项数加1,然后执行判断模块。

与现有技术相比,本发明的有益效果是:(1)使用者不需要深入学习elink知识,只需通过软件进行简单的操作即可完成elink测试;(2)自动化测试仅需1~2分钟,大幅提升测试效率;(3)采用selenium框架技术模拟人工操作,在网页上获取的数据十分准确;(4)测试结果保存在本地日志中,并且标有测试起始时间,方便用户对比各轮测试结果。

附图说明

图1为本发明方法流程图;

图2为命令下发流程图;

图3为测试及写日志方法流程图;

图4为日志中部分测试结果示意图。

具体实施方式

下面结合附图和实施例对本发明做进一步详细说明。

如图1所示,本发明本发明elink的自动化测试方法包括如下步骤:

s1:开始,获取待测设备的mac地址。

s2:通过浏览器登录测试管理平台,并保存测试时间;

s3:判断测试项是否全部完成,如果是,测试完成,结束;如果否,执行步骤s4;

s4:下发组装好的json命令;

s5:查询最新的平台日志,提取返回参数并解码,然后写入本地日志;

s6:写入完毕,测试项数加1,然后执行步骤s3。

本发明只需要用户输入待测设备的mac地址和登录信息,其他全部由系统自动完成,操作非常方便,相较于人工操作,本发明的使用者不需要深入学习clink知识,只需通过软件进行简单的操作即可完成clink测试;自动化测试仅需1~2分钟,大幅提升测试效率;测试结果保存在本地日志中,并且标有测试起始时间,方便用户对比各轮测试结果。

本例的框架采用sclcnium框架技术模拟人工操作,在网页上获取的数据十分准确。sclcnium是一个用于wcb应用程序测试的工具。sclcnium测试直接运行在浏览器中,就像真正的用户在操作一样。支持的浏览器包括ie(7,8,9,10,11),mozillafircfox,safari,googlcchromc,opcra等。

作为本发明的一个实施例,本发明的具体操作步骤如下:

(1)在步骤s1中,启动后,首先要求用户输入待测设备的mac地址,本发明要求mac地址不带分隔符,本发明会对mac地址的可用性做出判断,如果mac地址带分隔符或者长度不正确,会有提示并要求重新输入。

(2)在步骤s2中,采集到正确的mac地址后,自动拉起谷歌浏览器,并访问ap(无线接入点)测试管理平台页面,用户手动登录,后台周期性检测当前url,通过比对当前url与登录成功后的url来判断平台是否登录成功。

(3)在步骤s4中,通过xpath(xml路径语言)在动态渲染页面定位元素,模拟人工操作完成json命令下发,并将页面返回信息打印到窗口中,查看命令下发是否成功,具体流程如图2所示。

(4)在步骤s5中,命令执行后,查询设备日志,通过过滤setpluginparams和mac地址来搜索日志,然后返回详情,为接下来的信息截取和解码输出做准备。

首先通过xpath定位到详情内容区域,通过正则表达式将return_parameter和id之间的信息截取出来,返回数据类型为列表,然后将列表转换成字符串;紧接着通过base64解码函数将字符串解码,返回类型为bytes,最终再将bytes转换成字符串,便于输出查看。本例采用base64库中的b64decode解码函数,解码后会将数据类型从strings变成bytes型,因此,需要将bytes转换成字符串。如果有支持字符串输出的解码函数,则直接返回字符串类型的内容,不需要再转换。

本例将测试所需的json命令写到字典中,获取keys并转换成列表,获取values并转换成列表,keys(键)就是冒号前面的字符串,values(键值)就是冒号后面的字符串。本例的需要测试的json命令包括:无线状态、wifi开关状态、路由器灯状态、无线定时状态等19项。

本例的每个测试项名称用keys[n]来表示,每个测试项的json命令可以用'{"mac":"'+mac+'","'+values[n]来表示。然后设定一个循环即可把各测试项依次测完并写入到本地日志文件中,如图3所示。

本例写入本地日志文件时不能采用覆盖写入,否则前面保存的测试数据就会丢失,因此本例采用追加写入,编码方式采用utf-8。本例将本地日志默认保存在d盘,文件名为result.txt,本发明的本地日志中部分测试结果如图4所示。通过本地日志,方便用户对比各轮测试结果,评估elink性能。

以上所述之具体实施方式为本发明的较佳实施方式,并非以此限定本发明的具体实施范围,本发明的范围包括并不限于本具体实施方式,凡依照本发明所作的等效变化均在本发明的保护范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1