CN108111929B - 一种基于Python自动化测试的方法、系统及测试终端 - Google Patents
一种基于Python自动化测试的方法、系统及测试终端 Download PDFInfo
- Publication number
- CN108111929B CN108111929B CN201711146850.2A CN201711146850A CN108111929B CN 108111929 B CN108111929 B CN 108111929B CN 201711146850 A CN201711146850 A CN 201711146850A CN 108111929 B CN108111929 B CN 108111929B
- Authority
- CN
- China
- Prior art keywords
- optical network
- network unit
- file
- test
- local
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000012360 testing method Methods 0.000 title claims abstract description 210
- 238000010998 test method Methods 0.000 title claims description 10
- 230000003287 optical effect Effects 0.000 claims abstract description 170
- 238000000034 method Methods 0.000 claims description 36
- 230000015654 memory Effects 0.000 claims description 14
- BUGBHKTXTAQXES-UHFFFAOYSA-N Selenium Chemical compound [Se] BUGBHKTXTAQXES-UHFFFAOYSA-N 0.000 claims description 6
- 229910052711 selenium Inorganic materials 0.000 claims description 6
- 239000011669 selenium Substances 0.000 claims description 6
- 238000004590 computer program Methods 0.000 claims 2
- 230000006870 function Effects 0.000 description 10
- 238000010586 diagram Methods 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 3
- 238000005259 measurement Methods 0.000 description 3
- 238000010295 mobile communication Methods 0.000 description 3
- 239000013307 optical fiber Substances 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 230000005856 abnormality Effects 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q11/00—Selecting arrangements for multiplex systems
- H04Q11/0001—Selecting arrangements for multiplex systems using optical switching
- H04Q11/0062—Network aspects
- H04Q11/0067—Provisions for optical access or distribution networks, e.g. Gigabit Ethernet Passive Optical Network (GE-PON), ATM-based Passive Optical Network (A-PON), PON-Ring
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/3692—Test management for test results analysis
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/14—Arrangements for monitoring or testing data switching networks using software, i.e. software packages
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/34—Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q11/00—Selecting arrangements for multiplex systems
- H04Q11/0001—Selecting arrangements for multiplex systems using optical switching
- H04Q11/0062—Network aspects
- H04Q2011/0079—Operation or maintenance aspects
- H04Q2011/0083—Testing; Monitoring
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Theoretical Computer Science (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明实施例涉及Python自动化技术领域,公开了一种基于Python自动化测试的方法、系统及测试终端。本发明实施例通过获取光网络单元型号,并确定所述光网络单元型号对应的升级文件名称;根据所述升级文件名称下载升级文件到本地;获取本地升级文件并升级所述光网络单元,并搭建测试环境;获取本地测试命令并依次执行,将测试结果输出到测试结果文件中;将测试结果文件自动发送给测试人员。通过上述方式,本发明可以减少测试时间,提高测试效率和准确率。
Description
技术领域
本发明涉及Python自动化技术领域,特别是涉及一种基于Python自动化测试的方法、系统及测试终端。
背景技术
随着用户对通信需求的增大,光纤接入技术得到了快速发展。以无源光网络PON(Passive Optical Network)技术为主的光纤接入技术已经以多种形态得到了广泛的应用。在PON系统中,一般包括一个局端设备光线路终端OLT(Optical Line Terminal)和多个用户侧设备光网络单元ONU(Optical Network Unit)。光网络单元是光纤接入的终端设备,其一般与光线路终端配合使用。而光网络单元的测试对PON系统的使用尤为重要。
传统人工测试一般只能先通过繁杂的测试获取测量数据,再经人工分析,根据分析结果去调整测试。这样的过程速度慢,而且花费大量的时间,并存在很多人为误差导致测试不准确。只有自动测试才能提供足够快的速度进行实时测试、实时处理、实时控制,使测试、分析和测试结果的应用融为一体。要保证测量精度,必须提高测量速度,才能保证多次测试真正处于相同条件。
发明人在实现本发明实施例的过程中,发现相关技术存在以下问题:人工测试容易导致光网络单元中很多隐藏问题没有被测试出来,而这些隐藏问题需要通过大量的重复性测试才能检测出,而测试人员精力有限,无法满足长时间的测试,因此,人工测试的测试时间长,测试效率低。
发明内容
本发明实施例旨在提供一种基于Python自动化测试的方法、系统及测试终端,其解决了人工测试的测试时间长,测试效率低的技术问题。
为解决上述技术问题,本发明实施例提供以下技术方案:
第一方面,本发明实施例提供一种基于Python自动化测试的方法,包括:
获取光网络单元型号,并确定所述光网络单元型号对应的升级文件名称;
根据所述升级文件名称下载升级文件到本地;
获取本地升级文件并升级所述光网络单元,并搭建测试环境;
获取本地测试命令并依次执行,将测试结果输出到测试结果文件中;
将测试结果文件自动发送给测试人员。
在一些实施例中,所述方法还包括:
根据所述测试结果文件更新升级文件,
将所述更新升级文件发布在服务器的固定文件夹中。
在一些实施例中,所述获取光网络单元型号,包括:执行远程登录程序获取光网络单元型号,所述光网络单元型号默认为最新的版本,或者自定义的版本。
在一些实施例中,所述确定所述光网络单元型号对应的升级文件名称,包括:根据预设命名规则,配合当前时间确定所述升级文件名称。
在一些实施例中,所述根据所述升级文件名称下载升级文件到本地,包括:连接服务器,并根据升级文件名称从服务器下载升级文件到本地,并将所述升级文件保存在本地的一个固定文件夹。
在一些实施例中,所述方法还包括:判断光网络单元是否上线,包括:
预设第一阈值时间和第二阈值时间,
执行远程登录程序,所述远程登录程序每隔一第一阈值时间检测光网络单元,并判断光网络单元是否上线,
若在所述第二阈值时间内没有检测到光网络单元,则判定所述光网络单元不上线,将发送故障信息至测试结果文件并保存。
第二方面,本发明实施例提供一种基于Python自动化测试的系统,包括:
获取模块,用于获取光网络单元型号;
确定模块,用于确定所述光网络单元型号对应的升级文件名称;
下载模块,用于根据所述升级文件名称下载升级文件到本地;
升级模块,用于获取本地升级文件并升级所述光网络单元,并搭建测试环境;
测试模块,用于获取本地测试命令并依次执行,将测试结果输出到测试结果文件中;
自动发送模块,用于将测试结果文件自动发送给测试人员。
在一些实施例中,所述系统还包括:
更新模块,用于根据所述测试结果文件更新升级文件,
将所述更新升级文件发布在服务器的固定文件夹中。
在一些实施例中,所述获取模块具体用于:执行远程登录程序获取光网络单元型号,所述光网络单元型号默认为最新的版本,或者自定义的版本。
在一些实施例中,所述确定模块具体用于:根据预设命名规则,配合当前时间确定所述升级文件名称。
在一些实施例中,所述下载模块具体用于:连接服务器,并根据升级文件名称从服务器下载升级文件到本地,并将所述升级文件保存在本地的一个固定文件夹。
在一些实施例中,所述系统还包括:
判断模块,用于判断光网络单元是否上线,包括:
预设第一阈值时间和第二阈值时间,
执行远程登录程序,所述远程登录程序每隔一第一阈值时间检测光网络单元,并判断光网络单元是否上线,
若在所述第二阈值时间内没有检测到光网络单元,则判定所述光网络单元不上线,将发送故障信息至测试结果文件并保存。
第三方面,本发明实施例提供一种测试终端,包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如上所述的基于Python自动化测试的方法。
第四方面,本发明实施例还提供了一种非易失性计算机可读存储介质,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令用于使测试终端能够执行如上所述的基于Python自动化测试的方法。
本发明实施例的有益效果是:区别于现有技术的情况下,本发明实施例通过获取光网络单元型号,并确定所述光网络单元型号对应的升级文件名称;根据所述升级文件名称下载升级文件到本地;获取本地升级文件并升级所述光网络单元,并搭建测试环境;获取本地测试命令并依次执行,将测试结果输出到测试结果文件中;将测试结果文件自动发送给测试人员。通过上述方式,本发明可以减少测试时间,提高测试效率和准确率。
附图说明
一个或多个实施例通过与之对应的附图中的图片进行示例性说明,这些示例性说明并不构成对实施例的限定,附图中具有相同参考数字标号的元件表示为类似的元件,除非有特别申明,附图中的图不构成比例限制。
图1是本发明实施例提供的一种基于Python自动化测试的方法示意图;
图2是本发明实施例提供的一种基于Python自动化测试的流程示意图;
图3是本发明实施例提供的一种基于Python自动化测试的系统示意图;
图4是本发明实施例提供的一种测试终端的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
此外,下面所描述的本发明各个实施方式中所涉及到的技术特征只要彼此之间未构成冲突就可以相互组合。
在本发明的实施例中,测试终端可以是智能手机、掌上电脑(Personal DigitalAssistant,PDA)、平板电脑、智能手表等能基于Python自动化测试的电子设备。
具体地,下面以电脑为例对本发明实施例作具体阐述。
实施例1
请参阅图1,图1是本发明实施例提供的一种基于Python自动化测试的方法示意图。如图1所示,所述方法应用于测试终端,所述测试终端为带有python2.7环境的终端,比如,用户电脑。所述方法包括:
S10:获取光网络单元型号,并确定所述光网络单元型号对应的升级文件名称;
具体地,所述获取光网络单元型号,包括:执行远程登录程序(也称为TelnetONU程序)获取光网络单元型号,所述远程登录程序主要采用Telnet协议进行远程登录服务器,Telnet协议是TCP/IP协议族中的一员,是Internet远程登录服务的标准协议的主要方式,它为用户提供了在本地计算机上完成远程主机工作的能力。在终端使用者的电脑上使用Telnet程序,用它连接到服务器,终端使用者可以在Telnet程序中输入命令,这些命令可以在服务器上运行,就像直接在服务器的控制台上输入一样,可以在本地控制远程服务器。远程登录程序可以用于获取光网络单元的信息,包括所述光网络单元的即时数据流量,所述光网络单元的型号,通过运用Telnet协议定时发送查看数据量的命令,可以实时地查看所述光网络单元的流量,通过运用Telnet协议发送获取光网络单元的型号的命令,可以获取所述光网络单元的型号。
其中,获取所述光网络单元的型号,可以用于确定所述光网络单元对应的升级文件名称,具体地,可以预设关联表,所述关联表存储有所述光网络单元的型号与所述光网络单元对应的升级文件名称的映射关系,每一个光网络单元的型号对应一个升级文件名称,其中,所述光网络单元的升级文件名称默认为研发人员发布的最新的版本,也可以是用户自定义的版本;还可以预设命名规则,将所述光网络单元的型号与所述光网络单元的升级文件名称关联,还可以配合当前时间,利用预设命名规则将所述光网络单元的型号进行转换,再加上当前时间,作为所述光网络单元对应的升级文件名称。
S20:根据所述升级文件名称下载升级文件到本地;
具体地,所述根据所述升级文件名称下载升级文件到本地包括:执行下载程序下载升级文件,所述下载程序用于将所述升级文件名称对应的升级文件下载到本地,其中,所述升级文件事先由测试人员发布在服务器上,所述下载程序根据所述升级文件的名称在所述服务器中找到相应的升级文件,并将所述升级文件下载到本地的一个文件夹中,其中,所述服务器优选为Linux服务器,即所述升级文件事先由测试人员发布在Linux服务器上,所述下载程序根据所述升级文件的名称在所述Linux服务器中找到相应的升级文件,并将所述升级文件下载到本地的一个文件夹中其中,所述文件夹可以为本地一个固定位置的文件夹,方便后续升级文件时可以快速寻找到所述升级文件。其中,还可以通过校对linux服务器文件更新时间,获取当前最新软件版本。
S30:获取本地升级文件并升级所述光网络单元,并搭建测试环境;
具体地,所述获取本地升级文件并升级所述光网络单元,并搭建测试环境主要通过光网络单元页面控制脚本来实现,可以通过执行光网络单元页面控制脚本,获取本地升级文件并升级所述光网络单元,并搭建测试环境。所述光网络单元页面控制脚本,为一条条的文字命令,这些文字命令是可以被查看或编辑的,测试人员可以根据需要自行编辑所述光网络单元页面控制脚本,例如,可以通过一些软件来查看或者编辑,比如,可以通过记事本软件来查看和编辑所述页面控制脚本,也可以通过eclipse软件来查看或编辑所述页面控制脚本,以及等等。
其中,所述光网络单元页面控制脚本的执行是通过脚本程序来执行的,所述脚本程序通过解释器将所述文字命令一条条地翻译为机器可识别的指令,并按顺序执行。所述脚本程序可以由应用程序临时调用并执行。执行所述光网络单元页面控制脚本,可以获取本地升级文件,本地升级文件被事先保存在一个固定的文件夹中,脚本程序通过固定文件夹的路径找到所述升级文件,并根据升级文件的内容升级所述光网络单元。
其中,所述光网络单元页面控制脚本的执行可以通过python控制selenium系统处理,其中,selenium系统是一个用于Web应用程序测试的工具,selenium测试可以直接运行在浏览器中,让浏览器自动化地执行一系列的测试,模拟用户在浏览器中的操作,就像真正的用户在操作一样。python程序控制操作selenium,selenium控制光网络单元页面信息。所述光网络单元页面可以进行配置PPOE(虚拟拨号协议)、桥、telnet(远程登录协议)、VoIP(网络电话)、IPTV(交互式网络电视)等业务。
其中,所述升级文件还保存有配置命令信息,一些常用的配置可以通过Telnet进入光线路终端执行,其余的配置命令通过读取所述升级文件中的配置命令一条一条进行配置,从而搭建好测试所需要的环境。
S40:获取本地测试命令并依次执行,将测试结果输出到测试结果文件中;
其中,所述测试命令的获取通过光线路终端程序完成,即可以通过执行光线路终端程序,在本地上获取测试命令并依次执行,把执行后光线路终端返回的测试结果输出到测试结果文件中。其中,测试人员先根据自己需要测试的功能在本地txt文档中输出测试步骤中的一些命令,供程序读取存入序列中,然后这些命令按顺序依次执行测试光网络单元性能,把执行后光线路终端返回的测试结果输出到固定文件中。其中,所述固定文件可以为Excel文件,即可以将执行后光线路终端返回的测试结果输出到Excel文件中。所述测试结果以固定格式存放在Excel文档中,所述Excel文档中记载着测试各类测试问题和异常。
S50:将测试结果文件自动发送给测试人员。
具体地,所述自动发送可以通过邮件的形式完成,执行邮件自动发送程序,将测试结果文件以邮件附件的形式发送给测试人员;还可以通过即时消息的形式发送,将测试结果文件发送给测试人员,比如,可以通过QQ将测试结果文件以消息的形式发送给测试人员,还可以通过微信将测试结果文件以消息的形式发送给测试人员,以及等等。
测试人员可以根据测试结果内容,修改升级文件,将升级文件发布在服务器的固定文件夹中,然后,被第二次测试流程获取重新执行。然后测试人员继续根据测试结果文件的内容,修改升级文件并更新版本,将所述升级文件发布在服务器的固定文件夹中,测试流程循环进行,直至所检测的性能指标全部通过,发布最后版本作为正式版。
本发明实施例的方法采用自动化执行,只需要把光网络单元连接在带有python2.7环境的终端上,直接运行程序,便按照流程依次执行,按照测试流程依次循环测试。
本发明实施例通过获取光网络单元型号,并确定所述光网络单元型号对应的升级文件名称;根据所述升级文件名称下载升级文件到本地;获取本地升级文件并升级所述光网络单元,并搭建测试环境;获取本地测试命令并依次执行,将测试结果输出到测试结果文件中;将测试结果文件自动发送给测试人员。通过上述方式,本发明可以减少测试时间,提高测试效率和准确率。
实施例2
请参阅图2,图2是本发明实施例提供的一种基于Python自动化测试的流程示意图;如图2所示,开始时先获取连接,即先将光网络单元接入光线路终端,之后检测所述光网络单元是否上线,检测所述光网络单元是否上线的方法如下:设置第一阈值时间和第二阈值时间,此时计时器开始计时,每隔一个第一阈值时间检测一次光网络单元是否上线,如果检测到第一阈值时间内光网络单元没有上线,则继续每隔第一阈值时间检测一次,如果计时器时间达到第二阈值时间后,仍未检测到所述光网络单元上线,则确定所述光网络单元没有上线,之后把错误信息写入固定文件中,其中,所述第一阈值时间优选为10秒,所述第二阈值时间优选为300秒,所述固定文件优选为Excel表,即为:光网络单元接入光线路终端后检测上线,计时器开始计时,每隔10秒检测一次,如果计时器达到300秒后所述光网络单元没有上线,则把错误信息写入到Excel表中。
如果在所述第二阈值时间内检测到所述光网络单元上线,则获取所述光网络单元的型号,并确定升级文件的名称。
其中,获取所述光网络单元型号,包括:执行远程登录程序(也称为TelnetONU程序)获取光网络单元型号,所述远程登录程序主要运用Telnet协议,Telnet协议是TCP/IP协议族中的一员,是Internet远程登录服务的标准协议的主要方式,它为用户提供了在本地计算机上完成远程主机工作的能力。在终端使用者的电脑上使用Telnet程序,用它连接到服务器,终端使用者可以在Telnet程序中输入命令,这些命令可以在服务器上运行,就像直接在服务器的控制台上输入一样,可以在本地就能控制服务器。远程登录程序可以用于获取光网络单元的信息,包括所述光网络单元的即时数据流量,所述光网络单元的型号,通过运用Telnet协议定时发送查看数据量的命令可以实时地查看所述光网络单元的流量,通过运用Telnet协议发送获取光网络单元的型号的命令可以获取所述光网络单元的型号。
其中,确定所述升级文件的名称可以通过预设关联表,所述关联表存储有所述光网络单元的型号与所述光网络单元对应的升级文件名称的映射关系,每一个光网络单元的型号对应一个升级文件名称,其中所述光网络单元的升级文件名称默认为研发人员发布的最新的版本,也可以是用户自定义的版本;还可以事先预设命名规则,所述命名规则为公司产品的命名规则,将所述光网络单元的型号与所述光网络单元的升级文件名称关联,还可以配合当前时间,利用预设命名规则将所述光网络单元的型号进行转换,再加上当前时间,作为所述光网络单元对应的升级文件名称。
确定出所述升级文件名称后,将从服务器获取所述升级文件,所述升级文件通过下载程序从服务器中下载,所述服务器可以为Linux服务器,也可以为Windows服务器,以及等等。优选地,所述服务器为Linux服务器。其中,所述升级文件事先由测试人员发布在Linux服务器上,所述下载程序根据所述升级文件的名称在所述Linux服务器中找到相应的升级文件,并将所述升级文件下载到本地的一个文件夹中,其中,所述文件夹可以为本地一个固定位置的文件夹,由于路径固定,所以可以方便后续升级时快速寻找到所述升级文件。
若从服务器上无法获取升级文件,或获取升级文件的过程中发生错误导致获取失败,则将获取失败信息发送到测试结果文件中,其中所述测试结果文件为本地文件,可以为txt文件,也可以为word文件,以及等等。
若从服务器上成功获取升级文件,将服务器上的升级文件下载到本地之后,执行光网络单元页面控制脚本,获取本地升级文件并升级所述光网络单元,并做好相应配置,配置所述光网络单元并搭建测试环境。具体地,所述光网络单元页面控制脚本,为一条条的文字命令,这些文字命令是可以被查看或编辑的,测试人员可以根据需要自行编辑所述光网络单元页面控制脚本,例如可以通过一些软件来查看或者编辑,比如说可以通过记事本软件来查看和编辑所述页面控制脚本,也可以通过eclipse软件来查看或编辑所述页面控制脚本,以及等等。所述光网络单元页面控制脚本的执行是通过脚本程序来执行的,所述脚本程序通过解释器将所述文字命令一条条地翻译为机器可识别的指令,并按顺序执行。所述脚本程序可以由应用程序临时调用并执行。执行所述光网络单元页面控制脚本,可以获取本地升级文件,本地升级文件被事先保存在一个固定的文件夹中,脚本程序通过固定文件夹的路径找到所述升级文件,并根据升级文件的内容升级所述光网络单元。所述升级文件还保存有配置命令信息,一些常用的配置可以通过Telnet进入光线路终端执行,其余的配置命令通过读取所述升级文件中的配置命令一条一条进行配置,从而搭建好测试所需要的环境,解决了光网络页面配置原本需要手工登录页面一步步的配置,比较消耗人力和时间这些问题。
执行光线路终端程序,在本地上获取测试命令并依次执行,把执行后光线路终端返回的测试结果输出到测试结果文件中;其中,测试人员先根据自己需要测试的功能在本地固定文件中输出测试步骤中的一些命令,供程序顺序读取,其中所述本地固定文件可以为为Excel文件,txt文件,word文件,以及等等。优选地,所述本地固定文件为txt文件,即测试人员根据测试的功能预先写入测试命令,然后这些命令按顺序依次执行测试光网络单元性能,把执行后光线路终端返回的测试结果输出到测试结果文件中,所述测试结果文件可以为Excel文件,txt文件,word文件,以及等等。其中,所述测试结果文件可以为Excel文件,即可以将执行后光线路终端返回的测试结果输出到Excel文件中。所述测试结果以固定格式存放在Excel文档中,所述Excel文档中记载着测试各类测试问题和异常。
在上述测试完成之后,将执行自动发送程序,把测试结果文件发送给测试人员。具体地,所示自动发送可以通过邮件的形式完成,执行邮件自动发送程序,将测试结果文件以邮件附件的形式发送给测试人员;还可以通过即时消息的形式发送,将测试结果文件发送给测试人员,比如说可以通过QQ将测试结果文件以消息的形式发送给测试人员,还可以通过微信将测试结果文件以消息的形式发送给测试人员,以及等等。
测试人员根据测试结果内容,修改升级文件,将升级文件发布在服务器的固定文件夹中,然后被第二次测试流程获取重新执行。本发明实施例的方法采用自动化执行,只需要把光网络单元连接在带有python2.7环境的终端上,直接运行程序,便可按照流程依次执行,按照测试流程依次循环测试。
本发明实施例通过获取光网络单元型号,并确定所述光网络单元型号对应的升级文件名称;根据所述升级文件名称下载升级文件到本地;获取本地升级文件并升级所述光网络单元,并搭建测试环境;获取本地测试命令并依次执行,将测试结果输出到测试结果文件中;将测试结果文件自动发送给测试人员。通过上述方式,本发明可以减少测试时间,提高测试效率和准确率。
实施例3
请参阅图3,图3是本发明实施例提供的一种基于Python自动化测试的系统示意图,其中,所述基于Python自动化测试系统100包括:获取模块10,确定模块20,下载模块30,升级模块40,测试模块50,自动发送模块60,更新模块70,判断模块80。
其中,所述获取模块10,具体用于,获取光网络单元型号。具体地,执行远程登录程序获取光网络单元型号,所述光网络单元型号默认为最新的版本,或者自定义的版本。
所述确定模块20,具体用于,确定所述光网络单元型号对应的升级文件名称。具体地,根据预设命名规则,配合当前时间确定所述升级文件名称。
所述下载模块30,具体用于,根据所述升级文件名称下载升级文件到本地。具体地,连接服务器,并根据升级文件名称从服务器下载升级文件到本地,并将所述升级文件保存在本地的一个固定文件夹。
所述升级模块40,具体用于,获取本地升级文件并升级所述光网络单元,并搭建测试环境;
所述测试模块50,具体用于,获取本地测试命令并依次执行,将测试结果输出到测试结果文件中;
所述自动发送模块60,具体用于,将测试结果文件自动发送给测试人员;
所述更新模块70,具体用于,根据所述测试结果文件更新升级文件,将所述更新升级文件发布在服务器的固定文件夹中。
所述判断模块80,具体用于,判断光网络单元是否上线。预设第一阈值时间和第二阈值时间,执行远程登录程序,所述远程登录程序每隔一第一阈值时间检测光网络单元,并判断光网络单元是否上线,若在所述第二阈值时间内没有检测到光网络单元,则判定所述光网络单元不上线,将发送故障信息至测试结果文件并保存。
具体地,设置第一阈值时间和第二阈值时间,此时计时器开始计时,每隔一个第一阈值时间检测一次光网络单元是否上线,如果检测到第一阈值时间内光网络单元没有上线,则继续每隔第一阈值时间检测一次,如果计时器时间达到第二阈值时间后,仍未检测到所述光网络单元上线,则确定所述光网络单元没有上线,之后把错误信息写入固定文件中,其中,所述第一阈值时间优选为10秒,所述第二阈值时间优选为300秒,所述固定文件优选为Excel表,即为:光网络单元接入光线路终端后检测上线,计时器开始计时,每隔10秒检测一次,如果计时器达到300秒后所述光网络单元没有上线,则把错误信息写入到Excel表中。
由于系统实施例和方法实施例是基于同一构思,在内容不互相冲突的前提下,系统实施例的内容可以引用方法实施例的,在此不赘述。
本发明实施例通过获取光网络单元型号,并确定所述光网络单元型号对应的升级文件名称;根据所述升级文件名称下载升级文件到本地;获取本地升级文件并升级所述光网络单元,并搭建测试环境;获取本地测试命令并依次执行,将测试结果输出到测试结果文件中;将测试结果文件自动发送给测试人员。通过上述方式,本发明可以减少测试时间,提高测试效率和准确率。
实施例4
请参阅图4,图4是本发明实施例提供一种测试终端的结构示意图。其中,该测试终端可以是智能手机、掌上电脑(Personal Digital Assistant,PDA)、平板电脑、智能手表等能基于Python自动化测试的电子设备。
如图4所示,该电子设备500包括一个或多个处理器51以及存储器52。其中,图4中以一个处理器51为例。
处理器51和存储器52可以通过总线或者其他方式连接,图4中以通过总线连接为例。
存储器52作为一种非易失性计算机可读存储介质,可用于存储非易失性软件程序、非易失性计算机可执行程序以及模块,如本发明实施例中的一种基于Python自动化测试的方法对应的模块(例如,图3所述的各个模块)。处理器51通过运行存储在存储器52中的非易失性软件程序、指令以及模块,从而执行基于Python自动化测试的方法的各种功能应用以及数据处理,即实现上述方法实施例基于Python自动化测试方法以及上述系统实施例的各个模块和单元的功能。
存储器52可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实施例中,存储器52可选包括相对于处理器51远程设置的存储器,这些远程存储器可以通过网络连接至处理器51。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
所述模块存储在所述存储器52中,当被所述一个或者多个处理器51执行时,执行上述任意方法实施例中的基于Python自动化测试的方法,例如,执行以上描述的图1所示的各个步骤;也可实现图3所述的各个模块或单元的功能。
本发明实施例的测试终端500以多种形式存在,在执行以上描述的图1所示的各个步骤;也可实现图3所述的各个模块的功能时,上述测试终端500包括但不限于:
(1)移动通信设备:这类设备的特点是具备移动通信功能,并且以提供话音、数据通信为主要目标。这类电子设备包括:智能手机(例如iPhone)、多媒体手机、功能性手机,以及低端手机等。
(2)超移动个人计算机设备:这类设备属于个人计算机的范畴,有计算和处理功能,一般也具备移动上网特性。这类电子设备包括:PDA、MID和UMPC设备等,例如iPad。
(3)便携式娱乐设备:这类设备可以显示和播放视频内容,一般也具备移动上网特性。该类设备包括:视频播放器,掌上游戏机,以及智能玩具和便携式车载导航设备。
(4)其他具有视频播放功能和上网功能的电子设备。
本发明实施例还提供了一种非易失性计算机存储介质,所述计算机存储介质存储有计算机可执行指令,该计算机可执行指令被一个或多个处理器执行,例如图4中的一个处理器51,可使得上述一个或多个处理器可执行上述任意方法实施例中的基于Python自动化测试方法,例如,执行上述任意方法实施例中的基于Python自动化测试方法,例如,执行以上描述的图1所示的各个步骤;也可实现图3所述的各个模块的功能。
以上所描述的装置或设备实施例仅仅是示意性的,其中所述作为分离部件说明的单元模块可以是或者也可以不是物理上分开的,作为模块单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络模块单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对相关技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用直至得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;在本发明的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,步骤可以以任意顺序实现,并存在如上所述的本发明的不同方面的许多其它变化,为了简明,它们没有在细节中提供;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围。
Claims (14)
1.一种基于Python自动化测试的方法,应用于测试终端,其特征在于,所述方法包括:
获取光网络单元型号,并确定所述光网络单元型号对应的升级文件名称;
根据所述升级文件名称下载升级文件到本地;
获取本地升级文件并升级所述光网络单元,并搭建测试环境;
其中,所述升级所述光网络单元,并搭建测试环境,包括执行光网络单元页面控制脚本,所述执行光网络单元页面控制脚本是通过python控制selenium系统处理的;
获取本地测试命令并依次执行,将测试结果输出到测试结果文件中;
将测试结果文件自动发送给测试人员;
其中,所述测试结果包括所述光网络单元性能。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
根据所述测试结果文件更新升级文件,
将所述更新升级文件发布在服务器的固定文件夹中。
3.根据权利要求1所述的方法,其特征在于,所述获取光网络单元型号,包括:执行远程登录程序获取光网络单元型号,所述光网络单元型号默认为最新的版本,或者自定义的版本。
4.根据权利要求1所述的方法,其特征在于,所述确定所述光网络单元型号对应的升级文件名称,包括:根据预设命名规则,配合当前时间确定所述升级文件名称。
5.根据权利要求1所述的方法,其特征在于,所述根据所述升级文件名称下载升级文件到本地,包括:连接服务器,并根据升级文件名称从服务器下载升级文件到本地,并将所述升级文件保存在本地的一个固定文件夹。
6.根据权利要求1-5任一项所述的方法,其特征在于,所述方法还包括:判断光网络单元是否上线,包括:
预设第一阈值时间和第二阈值时间,
执行远程登录程序,所述远程登录程序每隔一第一阈值时间检测光网络单元,并判断光网络单元是否上线,
若在所述第二阈值时间内没有检测到光网络单元,则判定所述光网络单元不上线,将发送故障信息至测试结果文件并保存。
7.一种基于Python自动化测试的系统,应用于测试终端,其特征在于,包括:
获取模块,用于获取光网络单元型号;
确定模块,用于确定所述光网络单元型号对应的升级文件名称;
下载模块,用于根据所述升级文件名称下载升级文件到本地;
升级模块,用于获取本地升级文件并升级所述光网络单元,并搭建测试环境;
其中,所述升级所述光网络单元,并搭建测试环境,包括执行光网络单元页面控制脚本,所述执行光网络单元页面控制脚本是通过python控制selenium系统处理的;
测试模块,用于获取本地测试命令并依次执行,将测试结果输出到测试结果文件中;
其中,所述测试结果包括所述光网络单元性能;
自动发送模块,用于将测试结果文件自动发送给测试人员。
8.根据权利要求7所述的系统,其特征在于,所述系统还包括:
更新模块,用于根据所述测试结果文件更新升级文件,
将所述更新升级文件发布在服务器的固定文件夹中。
9.根据权利要求7所述的系统,其特征在于,所述获取模块具体用于:执行远程登录程序获取光网络单元型号,所述光网络单元型号默认为最新的版本,或者自定义的版本。
10.根据权利要求7所述的系统,其特征在于,所述确定模块具体用于:根据预设命名规则,配合当前时间确定所述升级文件名称。
11.根据权利要求7所述的系统,其特征在于,所述下载模块具体用于:连接服务器,并根据升级文件名称从服务器下载升级文件到本地,并将所述升级文件保存在本地的一个固定文件夹。
12.根据权利要求7-11任一项所述的系统,其特征在于,所述系统还包括:
判断模块,用于判断光网络单元是否上线,包括:
预设第一阈值时间和第二阈值时间,
执行远程登录程序,所述远程登录程序每隔一第一阈值时间检测光网络单元,并判断光网络单元是否上线,
若在所述第二阈值时间内没有检测到光网络单元,则判定所述光网络单元不上线,将发送故障信息至测试结果文件并保存。
13.一种测试终端,其特征在于,包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的计算机程序,所述计算机程序被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-6任一项所述的方法。
14.一种非易失性计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,当所述计算机程序被测试终端执行时,使所述测试终端执行权利要求1-6任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711146850.2A CN108111929B (zh) | 2017-11-17 | 2017-11-17 | 一种基于Python自动化测试的方法、系统及测试终端 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711146850.2A CN108111929B (zh) | 2017-11-17 | 2017-11-17 | 一种基于Python自动化测试的方法、系统及测试终端 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108111929A CN108111929A (zh) | 2018-06-01 |
CN108111929B true CN108111929B (zh) | 2020-11-27 |
Family
ID=62207212
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711146850.2A Active CN108111929B (zh) | 2017-11-17 | 2017-11-17 | 一种基于Python自动化测试的方法、系统及测试终端 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108111929B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109144542A (zh) * | 2018-08-07 | 2019-01-04 | 太仓市同维电子有限公司 | 无线终端产品软件自动升级系统及其方法 |
CN109471617A (zh) * | 2018-11-02 | 2019-03-15 | 郑州云海信息技术有限公司 | 一种基于Python的企业工时提交方法 |
CN110928795A (zh) * | 2019-11-28 | 2020-03-27 | 苏州浪潮智能科技有限公司 | 一种存储系统升级的稳定性测试方法及装置 |
CN110928798A (zh) * | 2019-11-30 | 2020-03-27 | 苏州浪潮智能科技有限公司 | 一种代码测试方法、装置及设备 |
CN113220332B (zh) * | 2021-06-07 | 2024-07-19 | 宁畅信息产业(北京)有限公司 | Bios固件刷新测试方法、装置、电子设备及存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102064955A (zh) * | 2009-11-17 | 2011-05-18 | 中兴通讯股份有限公司 | 光网络单元远程升级的方法与系统 |
CN102098590A (zh) * | 2009-12-15 | 2011-06-15 | 中兴通讯股份有限公司 | 光网络单元固件版本自动升级方法及系统 |
CN103560829A (zh) * | 2013-10-31 | 2014-02-05 | 上海斐讯数据通信技术有限公司 | 一种uni 端口的自动化测试方法及系统 |
CN103684581A (zh) * | 2013-12-20 | 2014-03-26 | 上海斐讯数据通信技术有限公司 | 一种光网络单元vlan功能的自动化测试工具及测试方法 |
EP2822200A1 (en) * | 2013-07-02 | 2015-01-07 | JDSU Deutschland GmbH | Syncronization to upstream bursts |
CN104394042A (zh) * | 2014-12-17 | 2015-03-04 | 上海斐讯数据通信技术有限公司 | 一种mib测试onu系统升级的方法 |
-
2017
- 2017-11-17 CN CN201711146850.2A patent/CN108111929B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102064955A (zh) * | 2009-11-17 | 2011-05-18 | 中兴通讯股份有限公司 | 光网络单元远程升级的方法与系统 |
CN102098590A (zh) * | 2009-12-15 | 2011-06-15 | 中兴通讯股份有限公司 | 光网络单元固件版本自动升级方法及系统 |
EP2822200A1 (en) * | 2013-07-02 | 2015-01-07 | JDSU Deutschland GmbH | Syncronization to upstream bursts |
CN103560829A (zh) * | 2013-10-31 | 2014-02-05 | 上海斐讯数据通信技术有限公司 | 一种uni 端口的自动化测试方法及系统 |
CN103684581A (zh) * | 2013-12-20 | 2014-03-26 | 上海斐讯数据通信技术有限公司 | 一种光网络单元vlan功能的自动化测试工具及测试方法 |
CN104394042A (zh) * | 2014-12-17 | 2015-03-04 | 上海斐讯数据通信技术有限公司 | 一种mib测试onu系统升级的方法 |
Also Published As
Publication number | Publication date |
---|---|
CN108111929A (zh) | 2018-06-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108111929B (zh) | 一种基于Python自动化测试的方法、系统及测试终端 | |
CN104065637B (zh) | 网页游戏运行的方法及装置 | |
CN110134415A (zh) | 一种控制器及其软件升级方法和装置 | |
CN105450463B (zh) | 硬件设备的调试方法、装置和系统 | |
CN106445621A (zh) | 一种应用软件的升级方法、装置及电子设备 | |
CN111063353B (zh) | 允许自定义语音交互内容的客户端处理方法及用户终端 | |
CN107423176B (zh) | 一种内存的测试方法、控制终端、服务器及系统 | |
CN109308236A (zh) | 一种热插拔功能测试方法、装置及相关设备 | |
CN104519105A (zh) | 一种获取与终端相匹配的应用的方法及装置 | |
CN111736862B (zh) | 一种多端协同升级方法、装置、终端及存储介质 | |
CN112181822A (zh) | 一种测试方法和应用程序的启动耗时测试方法 | |
CN110673862A (zh) | 兼用多模式的嵌入式设备固件无线升级方法、设备、介质 | |
CN113434255B (zh) | 虚拟设备的创建方法及其装置 | |
CN111128139B (zh) | 无侵入式语音测试方法及装置 | |
CN108540344B (zh) | 一种路由器升级测试方法及系统 | |
CN102664945B (zh) | 针对超时连接的文件下载方法、装置和系统 | |
CN105991700A (zh) | 处理语音数据的方法、云端服务器系统和终端设备 | |
CN107203471B (zh) | 联调方法、服务平台及计算机存储介质 | |
CN109697164A (zh) | 浏览器中调起App的测试方法、装置、存储介质及终端 | |
CN110737900B (zh) | 网页功能测试方法及装置、服务器和计算机可读存储介质 | |
CN109344052B (zh) | 一种接口自动化测试方法、装置及电子设备 | |
CN115345098B (zh) | Soc验证方法、装置、电子设备及存储介质 | |
CN107509215A (zh) | 一种无线认证自动化测试方法及系统 | |
CN113657068A (zh) | Soc仿真验证及soc的仿真验证设备验证环境搭建方法 | |
CN115580550A (zh) | 网卡稳定性测试方法、装置、设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |