[发明专利]一种基于Python对服务器进行远程测试的方法在审
申请号: | 201710359601.5 | 申请日: | 2017-05-19 |
公开(公告)号: | CN107168877A | 公开(公告)日: | 2017-09-15 |
发明(设计)人: | 武秋星;赵召 | 申请(专利权)人: | 郑州云海信息技术有限公司 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 济南诚智商标专利事务所有限公司37105 | 代理人: | 王汝银 |
地址: | 450018 河南省郑州市*** | 国省代码: | 河南;41 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 python 服务器 进行 远程 测试 方法 | ||
技术领域
本发明涉及服务器测试技术领域,具体地说是一种基于Python对服务器进行远程测试的方法。
背景技术
随着目前互联网和大数据技术的不断发展,服务器的数量需求与型号需求越来越丰富。为了满足所有产品都经过完整测试的要求,单个测试人员势必要进行多个项目的测试,测试效率直线下降。因此,自动化测试的必要性就进一步加强。自动化测试一个很重要的特点就是远程测试。
以往的远程测试,大致分为两种:
第一种,测试人员手动ssh登陆
这种方法的优点是测试结果直观有效,测试人员能够进行丰富的操作。缺点在于,一旦不能顺利连接,测试人员需要进行各类排查,这一块根据测试人员经验的丰富度,难易程度呈两级分化状态,不利于工业化测试。
第二种,利用expect自动登陆:
这种方法的优点是能够自动登陆,进行自动化测试。缺点在于,通用性不够好。expect适用于交互性测试,但在远程测试的场景中,当自动登陆后,假若交回控制,当前终端将为远程机器,在随后的测试结束退出方面存在问题。假若不交回控制,直接结束连接。那么对于一个测试动辄好几十个命令的情况将会大量的建立连接,不仅存在稳定性的问题,还浪费时间。
发明内容
为克服上述现有技术存在的不足,本发明的目的在于提供一种高效、客观的基于Python对服务器进行远程测试的方法。
本发明解决其技术问题所采用的技术方案是:一种基于Python对服务器进行远程测试的方法,其特征是:包括以下步骤,
S1,控制机对多个待测机同时进行远程连接测试;
S2,对通过连接测试的待测机进行远程连接;
S3,控制机对连接的待测机进行状态检测,待测机状态正常的进入S4,对状态不正常的待测机中断测试;
S4,对状态正常的待测机进行远程测试,并向控制机回传测试结果。
进一步地,步骤S1中所述远程连接测试包括ping通测试和ssh连接测试。
进一步地,所述ping通测试具体为:ping向每个待测机发送若干请求包,检测获取的响应包的个数,若至少获得1个响应包,则该待测机通过ping通测试,否则每隔特定时间重复发送请求包,直至达到最大发送次数,若控制机始终未收到响应包,则判定该待测机未通过ping通检测。
进一步地,控制机记录通过ping通测试的待测机返回响应包耗费的时间。
进一步地,所述特定时间为30秒,所述最大发送次数为20次。
进一步地,步骤S2中控制机通过Python的paramiko模块进行远程连接,所述paramiko模块分别对待测机进行密码登陆尝试和rsa登陆尝试。
进一步地,步骤S3中所述远程连接包括:待测机记录自身的开机时间,控制机将所述开机时间与所述通过ping通测试的待测机返回响应包耗费的时间进行比较,根据比较的差值,判断待测机的启动状态是否正常。
进一步地,步骤S4中对所述状态正常的待测机进行远程测试包括在控制机上建立paramiko对象,根据待测机的信息,建立待测机与控制机的ssh连接,控制机通过ssh通道向待测机发送测试命令,待测机执行所述测试命令,获取测试结果,并将所述测试结果回传至控制机。
进一步地,所述待测机的信息包括待测机的IP、用户名和登陆密钥。
本发明的有益效果是:本发明利用1台控制机同时对多台待测机进行远程连接测试和远程检测,形成1对多的测试观察,提高测试效率,为后续的自动化测试奠定了基础;
在对待测机状态监测时,比较控制机和待测机分别记录的ping通时间和开机时间,客观的体现待测机的状态结果,避免人为监测的测试经验对于监测坚果的主观影响,使对待测机状态的监测更加准确;
控制机对待测机进行远程连接时,使用Python的paramiko模块进行两种登录方式的尝试,避开了Linux系统不同版本间兼容性的问题,使本发明所述远程测试方法的应用范围更加广泛。
附图说明
图1是本发明所述方法的流程图。
图2是本发明所述远程连接检测的流程图。
具体实施方式
为能清楚说明本方案的技术特点,下面通过具体实施方式,并结合其附图,对本发明进行详细阐述。本发明省略了对公知常识的描述以避免不必要地限制本发明。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于郑州云海信息技术有限公司,未经郑州云海信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710359601.5/2.html,转载请声明来源钻瓜专利网。