CN113806150A - 一种存储服务器远程测试的方法、系统、设备和存储介质 - Google Patents

一种存储服务器远程测试的方法、系统、设备和存储介质 Download PDF

Info

Publication number
CN113806150A
CN113806150A CN202110934030.XA CN202110934030A CN113806150A CN 113806150 A CN113806150 A CN 113806150A CN 202110934030 A CN202110934030 A CN 202110934030A CN 113806150 A CN113806150 A CN 113806150A
Authority
CN
China
Prior art keywords
test
storage server
test case
remote
information
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.)
Granted
Application number
CN202110934030.XA
Other languages
English (en)
Other versions
CN113806150B (zh
Inventor
张岩
吴昊
江超
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Jinan Inspur Data Technology Co Ltd
Original Assignee
Jinan Inspur Data Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Jinan Inspur Data Technology Co Ltd filed Critical Jinan Inspur Data Technology Co Ltd
Priority to CN202110934030.XA priority Critical patent/CN113806150B/zh
Publication of CN113806150A publication Critical patent/CN113806150A/zh
Application granted granted Critical
Publication of CN113806150B publication Critical patent/CN113806150B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/2294Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing by remote test
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/2205Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/2273Test methods

Abstract

本发明提出了一种存储服务器远程测试的方法、系统、设备和存储介质,该方法包括将测试用例的步骤按照格式要求转换成表格数据,并且在表格中用页区分每个测试用例;使用通用代码读取表格数据,根据不同页中包含的信息,生成不同的测试代码和自动化测试脚本;根据表格数据中对应关键字段内容,选择不同远程连接方式,进而匹配不连接目标,下发相应指令和请求,并获取不同返回值;对返回值根据预期结果进行校验,在所有测试用例校验通过后,生成校验报告。基于该方法,还提出了一种存储服务器远程测试的系统、设备和存储介质。本发明在保证测试范围的前提下,迅速地开发自动化测试脚本,提升了自动化单元测试开发效率,实现简单。

Description

一种存储服务器远程测试的方法、系统、设备和存储介质
技术领域
本发明属于存储服务器测试技术领域,特别涉及一种存储服务器远程测试的方法、系统、设备和存储介质。
背景技术
随着信息化水平的不断提高,网络数据呈现爆炸式增长,这无疑对服务器数据存储能力提出了更高的要求。存储服务器是指为特定目标而设计,因此配置方式也不同。它可能是拥有一点额外的存储,也可能拥有很大的存储空间的服务器。
逐渐成为主流的分布式海量存储系统结构复杂,功能繁多,导致测试用例执行越发复杂,用例总量不断上升。基于python的自动化远程测试方法往往需要维护大量的测试脚本,开发难度大,效率低。这就急需要一种简单、快速地自动化测试开发方法。
发明内容
为了解决上述技术问题,本发明提出了一种存储服务器远程测试的方法、系统、设备和存储介质,本发明覆盖了从服务器web前端restfulAPI接口至shell命令行的多层次协同测试,在保证测试范围的前提下,提升了自动化单元测试开发效率。
为实现上述目的,本发明采用以下技术方案:
一种存储服务器远程测试方法,包括以下步骤:
将测试用例的步骤按照格式要求转换成表格数据,并且在表格中用页区分每个测试用例;
使用通用代码读取所述表格数据,根据不同页中包含的信息,生成不同的测试代码和自动化测试脚本;
根据表格数据中对应关键字段内容,选择不同远程连接方式,进而匹配不连接目标,下发相应指令和请求,并获取不同返回值;
对返回值根据预期结果进行校验,在所有测试用例校验通过后,生成校验报告。
进一步的,所述将测试用例的步骤按照格式要求转换成表格数据具体包括:
将测试用例的步骤转化为包含shell命令行和RestfulAPI的步骤;
将实现测试用例所需的shell命令行、shell命令行参数以及RestfulAPI包含的统一资源定位符、请求头、请求体信息记录于表格文档中;并且每个测试用例在表格中采用页进行区分。
进一步的,所述使用通用代码读取所述表格数据具体包括:
首先对本地表格文件进行读写,然后激活每个测试用例,并为每个测试用例创建页,其中页中的每行元素作为一个列表元素,且所有的列表元素为键值相同的字典,将表格中的内容依次读取放入字典组成的列表中。
进一步的,所述根据表格数据中对应关键字段内容,选择不同远程连接方式,进而匹配不连接目标,下发相应指令和请求,并获取不同返回值具体包括:
通过SSH协议,连接远程服务器,下发shell指令并获取存储服务器节点后端执行结果;
通过HTTP/HTTPS协议向存储服务器应用下发RestfulAPI接口各项请求并获取存储服务器节点前端执行结果。
进一步的,所述根据表格数据中对应关键字段内容,选择不同远程连接方式还包括:
采用SSH协议时记录shell命令所需信息;其中shell命令所需信息包括:目标ip地址、目标端口号、访问用户、访问密码、连接时间、目标命令体B02、命令选项和命令参数信息;
采用HTTP/HTTPS协议时,抓取所执行的restfulAPI接口信息;其中所执行的restfulAPI接口信息包括目标ip地址目标端口号、访问用户、访问密码、连接时间、目标命令体、命令选项、命令参数信息。
进一步的,所述对返回值根据预期结果进行校验,在所有测试用例校验通过后,生成校验报告具体包括:
将shell命令行的预期信息或RestfulAPI接口请求预期信息,根据需要设置进行校验字符内容和/或校验状态码;如果当前测试用例的所有步骤均符合预期,则判断当前测试用例符合预期,如果有一步不符合预期,则判断当前测试用例不符合预期,直到所有测试用例校验完成,生成校验报告。
进一步的,所述方法还包括:采用循环命令遍历所有测试用例,直到所有测试用例检验通过。
本发明还提出了一种存储服务器远程测试系统,所述系统包括转换模块、读取模块、获取模块和检验模块:
所述转换模块用于将测试用例的步骤按照格式要求转换成表格数据,并且在表格中用页区分每个测试用例;
所述读取模块用于使用通用代码读取所述表格数据,根据不同页中包含的信息,生成不同的测试代码和自动化测试脚本;
所述获取模块用于根据表格数据中对应关键字段内容,选择不同远程连接方式,进而匹配不连接目标,下发相应指令和请求,并获取不同返回值;
所述校验模块用于对返回值根据预期结果进行校验,在所有测试用例校验通过后,生成校验报告。
本发明还提出了一种设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现所述的方法步骤。
本发明还提出了一种可读存储介质,所述可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如所述的方法步骤。
发明内容中提供的效果仅仅是实施例的效果,而不是发明所有的全部效果,上述技术方案中的一个技术方案具有如下优点或有益效果:
本发明提出了一种存储服务器远程测试的方法、系统、设备和存储介质,该方法包括将测试用例的步骤按照格式要求转换成表格数据,并且在表格中用页区分每个测试用例;使用通用代码读取表格数据,根据不同页中包含的信息,生成不同的测试代码和自动化测试脚本;根据表格数据中对应关键字段内容,选择不同远程连接方式,进而匹配不连接目标,下发相应指令和请求,并获取不同返回值;对返回值根据预期结果进行校验,在所有测试用例校验通过后,生成校验报告。本方法是一种基于python的存储服务器远程自动化测试方法,基于该方法,还提出了一种存储服务器远程测试的系统、设备和存储介质。对于需要SSH连接、HTTP/HTTPS请求连接的存储服务器远程测试,无需测试人员对代码进行专门编写,仅需要在手动测试时,将远程连接执行测试所需信息,按照用例步骤记录于excel文档,即可生成传统意义上的自动化单元测试代码,该测试覆盖了从服务器web前端restfulAPI接口至shell命令行的多层次协同测试。在保证测试范围的前提下,提升了自动化单元测试开发效率。实现简单、迅速地开发自动化测试脚本,提高开发效率,节省自动化开发时间及测试时间,节约时间成本。
附图说明
如图1为本发明实施例1一种存储服务器远程测试方法的整体架构示意图;
如图2为本发明实施例1一种存储服务器远程测试方法中excel表格数据结构示意图;
如图3为本发明实施例1一种存储服务器远程测试方法中登录信息所包含的内容示意图;
如图4为本发明实施例1一种存储服务器远程测试方法中预期信息所包含的内容示意图;
如图5为本发明实施例1一种存储服务器远程测试方法中判断测试用例步骤是否通过的流程图;
如图6为本发明实施例1一种存储服务器远程测试方法中python代码结构示意图;
如图7为本发明实施例2一种存储服务器远程测试系统示意图。
具体实施方式
为能清楚说明本方案的技术特点,下面通过具体实施方式,并结合其附图,对本发明进行详细阐述。下文的公开提供了许多不同的实施例或例子用来实现本发明的不同结构。为了简化本发明的公开,下文中对特定例子的部件和设置进行描述。此外,本发明可以在不同例子中重复参考数字和/或字母。这种重复是为了简化和清楚的目的,其本身不指示所讨论各种实施例和/或设置之间的关系。应当注意,在附图中所图示的部件不一定按比例绘制。本发明省略了对公知组件和处理技术及工艺的描述以避免不必要地限制本发明。
实施例1
本发明实施例1提出了一种存储服务器远程测试方法,对于需要SSH连接、HTTP/HTTPS请求连接的存储服务器远程测试,无需测试人员对代码进行专门编写,仅需要在手动测试时,将远程连接执行测试所需信息,按照用例步骤记录于excel文档,即可生成传统意义上的自动化单元测试代码,该测试覆盖了从服务器web前端restfulAPI接口至shell命令行的多层次协同测试。在保证测试范围的前提下,提升了自动化单元测试开发效率。
如图1为本发明实施例1一种存储服务器远程测试方法的整体架构示意图;
从A01至A02:测试人员在测试范围内,编写测试用例,并将测试用例根据步骤,转化为包含有shell命令行及RestfulAPI的步骤。将实现用例所需的shell命令行、命令行参数及RestfulAPI包含的url、请求头、请求体信息记录于Excel文档中,每条用例用sheet页进行区分。
如图2为本发明实施例1一种存储服务器远程测试方法中excel表格数据结构示意图;测试人员首先通过手动执行测试用例,对每一步测试用例所需操作步骤进行记录。需要记录excel表格数据结构如图2.当用例步骤中涉及web浏览器操作存储页面时,即图1A04步骤HTTP/HTTPS协议时,通过浏览器抓包记录相应步骤所执行的restfulAPI接口信息,包括目标ip地址C02、目标端口号C03、访问用户C04、访问密码C05、连接时间C06、目标请求方法B04、请求头、请求体信息B05。当用例步骤中涉及shell命令时,即图1A04步骤SSH协议时,记录相应shell命令所需信息,包括目标ip地址C02、目标端口号C03、访问用户C04、访问密码C05、连接时间C06、目标命令体B02、命令选项B04、命令参数信息B05。每一条用例用一个sheet页存放,每一个shell命令行步骤或restfulAPI请求另起一行。
从A02至A03时,使用通用代码读取所述表格数据,根据不同页中包含的信息,生成不同的测试代码和自动化测试脚本。首先对本地表格文件进行读写,然后激活每个测试用例,并为每个测试用例创建页,其中页中的每行元素作为一个列表元素,且所有的列表元素为键值相同的字典,将表格中的内容依次读取放入字典组成的列表中。
如图6为本发明实施例1一种存储服务器远程测试方法中python代码结构示意图,windows系统python开发环境的结构主要由unittest架构层、openpyxl数据读取层、paramiko远程传输层、requests远程请求层、HTMLTestRunner报告生成层、smtplib邮件传输层组成。
当用例经过上述转换形成excel文档后,由python解释器进行测试的主体工作。python代码结构如图6.python代码使用unittest单元测试框架,用以实现用例调度、校验结果、生成报告。引入openpyxl模块,用以实现对本地excel文件的读写。程序中调用openpyxl.load_workbook方法,加载一个excel文件,即一个测试模块的用例。调用active方法,激活一个sheet,即一条测试用例。在python代码中为每个sheet页,即一条测试用例创建一个列表,sheet页中的每行元素作为一个列表元素。所有的列表元素为键值相同的字典,其键均为sheet页的列名,依次为图2B01至B06的别名。字典的值为对应sheet页、对应行的实际数据。通过openpyxl的cell方法,将excel中的内容依次读取,并存放入上述由字典组成的列表中。由此,实现了图6中,由F01至F03的流程。
在python代码中,对上述包含用例信息的列表进行for循环遍历,保证每个列表中的元素,即一条用例的每个步骤,进行依次执行。列表元素为字典,根据连接类别B01字段,对该步骤进行判断。
从A03至A04时,python程序按照测试脚本依次执行。通过SSH协议,连接远程服务器,下发shell指令并获取执行结果;通过HTTP/HTTPS协议,向存储服务器应用下发RestfulAPI接口各项请求并获取执行结果。
通过SSH协议,连接远程服务器,下发shell指令并获取存储服务器节点后端执行结果;
通过HTTP/HTTPS协议向存储服务器应用下发RestfulAPI接口各项请求并获取存储服务器节点前端执行结果。
若B01中所含信息为shell命令行指令,则如图6中F04—F05步骤,引入pythonparamiko模块,调用SSHClient方法,建立一个SSH对象,调用该对象的connect方法,连接目标服务器。其中,目标服务器的ip地址、端口号、用户名、秘钥信息,通过上述字典中,如图3为本发明实施例1一种存储服务器远程测试方法中登录信息所包含的内容示意图;如图3中C02—C06,所记录的信息进行连接。将对应字典中的剩余内容,包括图2中B04—B05中数据,拼接为一条完整的shell命令行。调用上述所创建SSH对象的exec_command方法,将shell命令行传入远程存储服务器执行,并将执行后命令行输出结果、命令退出状态码返回至python进程。
若B01中所含信息为restfulAPI请求,则如图6中F06—F05步骤,引入pythonrequests模块。首先,提取restfulAPI请求信息,包括协议、目标服务器的ip地址、端口号、用户名、秘钥信息,调用requests模块的session方法,生成session连接。根据图2B01_B05步骤中所含信息,调用requests模块的post、put、get、delete方法,向目标服务器发送HTTP/HTTPS请求并获取返回值、状态码进入python进程。
如图4为本发明实施例1一种存储服务器远程测试方法中预期信息所包含的内容示意图;如图5为本发明实施例1一种存储服务器远程测试方法中判断测试用例步骤是否通过的流程图;
在A05中,根据实际用例步骤需要,将每个shell命令行步骤或者restfulAPI步骤的预期结果B06设置两重检验,分为字符内容检验和返回状态码检验,如图4。在测试用例按照步骤逐行转换入Excel表格时,根据实际需要,选择是否校验字符内容或返回状态码。若需要校验预期字符,则设置D02位置为字符串“True”,且在D03位置填入预期字符串;若不需要校验预期字符,则设置D02位置为字符串“False”,在D03位置不填入内容。若需要校验状态码,则设置D04位置为字符串“True”,且在D05位置填入预期状态码;若不需要校验状态码,则设置D02位置为字符串“False”,在D05位置不填入内容。
获取了相应的返回值和状态码后,python程序根据用例步骤字典中最后一个模块如图2B06,即图4D02—D05内容后,按照如图5所述逻辑进行校验。程序首先根据图D02中所含信息,在E02进行判断。若D02中所含字符串为“True”,则进行E03步骤对字符串的校验,此时若预期结果中包含D03所含字符,则进行E04步骤的校验;若此时预期结果中不包含D03所含字符,则通过调用python unittest框架中assertFalse函数将用例置为失败。若D02中所包含字符串为“False”,则跳过E03步骤的校验,进行E04步骤的校验。E04对D04步骤中所含字符串进行判断,若D04所包含字符串为“True”,则进行E05步骤的校验。若D04包含的字符为“False”,则跳过E05步骤的校验,将用例步骤置为成功。在E05步骤的校验中,若python中记录的返回状态码与D05中包含的状态码一致时,将用例步骤置为成功;若状态码不一致时,将用例步骤置为失败。
当同一个sheet页转换后形成的元素为字典的列表遍历执行完成以后,即为本条用例执行完成。所有步骤的最终状态均为成功时,本条用例即为成功,否则,若其中一个或多个步骤判定为失败时,则本条用例为失败。遍历同一个excel文件中的所有sheet页,则完成了一个模块中多条用例的顺序执行。
所有用例执行完毕后,调用python unittest框架的扩展模块HTMLTestRunner模块,在windows系统、python开发环境下生成html格式的本地测试报告。通过引入smtplib模块,将本地测试报告以邮件形式发送给相应的测试人员,如图6,F03-F07。
通过上述步骤,可以看出,对于需要SSH连接、HTTP/HTTPS请求连接的存储服务器远程测试,无需测试人员对代码进行专门编写,仅需要在手动测试时,将远程连接执行测试所需信息,按照用例步骤记录于excel文档,即可生成传统意义上的自动化单元测试代码,该测试覆盖了从服务器web前端restfulAPI接口至shell命令行的多层次协同测试。在保证测试范围的前提下,提升了自动化单元测试开发效率。
实施例2
基于本发明实施例1一种存储服务器远程测试方法,本发明实施例2还提出了一种存储服务器远程测试系统。该系统包括转换模块、读取模块、获取模块和检验模块:
转换模块用于将测试用例的步骤按照格式要求转换成表格数据,并且在表格中用页区分每个测试用例;
读取模块用于使用通用代码读取所述表格数据,根据不同页中包含的信息,生成不同的测试代码和自动化测试脚本;
获取模块用于根据表格数据中对应关键字段内容,选择不同远程连接方式,进而匹配不连接目标,下发相应指令和请求,并获取不同返回值;
校验模块用于对返回值根据预期结果进行校验,在所有测试用例校验通过后,生成校验报告。
转换模块实现的过程为:将实现测试用例所需的shell命令行、shell命令行参数以及RestfulAPI包含的统一资源定位符、请求头、请求体信息记录于表格文档中;并且每个测试用例在表格中采用页进行区分。
读取模块实现的过程为:首先对本地表格文件进行读写,然后激活每个测试用例,并为每个测试用例创建页,其中页中的每行元素作为一个列表元素,且所有的列表元素为键值相同的字典,将表格中的内容依次读取放入字典组成的列表中。
获取模块实现的过程为:通过SSH协议,连接远程服务器,下发shell指令并获取存储服务器节点后端执行结果;通过HTTP/HTTPS协议向存储服务器应用下发RestfulAPI接口各项请求并获取存储服务器节点前端执行结果。
采用SSH协议时记录shell命令所需信息;其中shell命令所需信息包括:目标ip地址、目标端口号、访问用户、访问密码、连接时间、目标命令体B02、命令选项和命令参数信息;
采用HTTP/HTTPS协议时,抓取所执行的restfulAPI接口信息;其中所执行的restfulAPI接口信息包括目标ip地址目标端口号、访问用户、访问密码、连接时间、目标命令体、命令选项、命令参数信息。
校验模块实现的过程为:将shell命令行的预期信息或RestfulAPI接口请求预期信息,根据需要设置进行校验字符内容和/或校验状态码;如果当前测试用例的所有步骤均符合预期,则判断当前测试用例符合预期,如果有一步不符合预期,则判断当前测试用例不符合预期,采用循环命令遍历所有测试用例,直到所有测试用例校验完成,生成校验报告。
实施例3
本发明还提出了一种设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现方法步骤如下:
将测试用例的步骤按照格式要求转换成表格数据,并且在表格中用页区分每个测试用例;将实现测试用例所需的shell命令行、shell命令行参数以及RestfulAPI包含的统一资源定位符、请求头、请求体信息记录于表格文档中;并且每个测试用例在表格中采用页进行区分。
使用通用代码读取所述表格数据,根据不同页中包含的信息,生成不同的测试代码和自动化测试脚本;首先对本地表格文件进行读写,然后激活每个测试用例,并为每个测试用例创建页,其中页中的每行元素作为一个列表元素,且所有的列表元素为键值相同的字典,将表格中的内容依次读取放入字典组成的列表中。
根据表格数据中对应关键字段内容,选择不同远程连接方式,进而匹配不连接目标,下发相应指令和请求,并获取不同返回值;通过SSH协议,连接远程服务器,下发shell指令并获取存储服务器节点后端执行结果;通过HTTP/HTTPS协议向存储服务器应用下发RestfulAPI接口各项请求并获取存储服务器节点前端执行结果。
采用SSH协议时记录shell命令所需信息;其中shell命令所需信息包括:目标ip地址、目标端口号、访问用户、访问密码、连接时间、目标命令体B02、命令选项和命令参数信息;
采用HTTP/HTTPS协议时,抓取所执行的restfulAPI接口信息;其中所执行的restfulAPI接口信息包括目标ip地址目标端口号、访问用户、访问密码、连接时间、目标命令体、命令选项、命令参数信息。
对返回值根据预期结果进行校验,在所有测试用例校验通过后,生成校验报告。将shell命令行的预期信息或RestfulAPI接口请求预期信息,根据需要设置进行校验字符内容和/或校验状态码;如果当前测试用例的所有步骤均符合预期,则判断当前测试用例符合预期,如果有一步不符合预期,则判断当前测试用例不符合预期,采用循环命令遍历所有测试用例,直到所有测试用例校验完成,生成校验报告。
需要说明:本发明技术方案还提供了一种电子设备,包括:通信接口,能够与其它设备比如网络设备等进行信息交互;处理器,与通信接口连接,以实现与其它设备进行信息交互,用于运行计算机程序时,执行上述一个或多个技术方案提供的一种存储服务器远程测试方法,而所述计算机程序存储在存储器上。当然,实际应用时,电子设备中的各个组件通过总线系统耦合在一起。可理解,总线系统用于实现这些组件之间的连接通信。总线系统除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。本申请实施例中的存储器用于存储各种类型的数据以支持电子设备的操作。这些数据的示例包括:用于在电子设备上操作的任何计算机程序。可以理解,存储器可以是易失性存储器或非易失性存储器,也可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(ROM,ReadOnly Memory)、可编程只读存储器(PROM,Programmable Read-Only Memory)、可擦除可编程只读存储器(EPROM,Erasable Programmable Read-Only Memory)、电可擦除可编程只读存储器(EEPROM,Electrically Erasable Programmable Read-Only Memory)、磁性随机存取存储器(FRAM,ferromagnetic random access memory)、快闪存储器(Flash Memory)、磁表面存储器、光盘、或只读光盘(CD-ROM,Compact Disc Read-Only Memory);磁表面存储器可以是磁盘存储器或磁带存储器。易失性存储器可以是随机存取存储器(RAM,RandomAccessMemory),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(SRAM,Static Random Access Memory)、同步静态随机存取存储器(SSRAM,Synchronous Static Random Access Memory)、动态随机存取存储器(DRAM,Dynamic Random Access Memory)、同步动态随机存取存储器(SDRAM,SynchronousDynamic Random Access Memory)、双倍数据速率同步动态随机存取存储器(DDRSDRAM,Double Data Rate Synchronous Dynamic Random Access Memory)、增强型同步动态随机存取存储器(ESDRAM,Enhanced Synchronous Dynamic Random AccessMemory)、同步连接动态随机存取存储器(SLDRAM,SyncLink Dynamic Random AccessMemory)、直接内存总线随机存取存储器(DRRAM,Direct Rambus Random Access Memory)。本申请实施例描述的存储器旨在包括但不限于这些和任意其它适合类型的存储器。上述本申请实施例揭示的方法可以应用于处理器中,或者由处理器实现。处理器可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器可以是通用处理器、DSP(Digital Signal Processing,即指能够实现数字信号处理技术的芯片),或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。处理器可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者任何常规的处理器等。结合本申请实施例所公开的方法的步骤,可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于存储介质中,该存储介质位于存储器,处理器读取存储器中的程序,结合其硬件完成前述方法的步骤。处理器执行所述程序时实现本申请实施例的各个方法中的相应流程,为了简洁,在此不再赘述。
实施例4
本发明还提出了一种可读存储介质,可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现方法步骤如下:
将测试用例的步骤按照格式要求转换成表格数据,并且在表格中用页区分每个测试用例;将实现测试用例所需的shell命令行、shell命令行参数以及RestfulAPI包含的统一资源定位符、请求头、请求体信息记录于表格文档中;并且每个测试用例在表格中采用页进行区分。
使用通用代码读取所述表格数据,根据不同页中包含的信息,生成不同的测试代码和自动化测试脚本;首先对本地表格文件进行读写,然后激活每个测试用例,并为每个测试用例创建页,其中页中的每行元素作为一个列表元素,且所有的列表元素为键值相同的字典,将表格中的内容依次读取放入字典组成的列表中。
根据表格数据中对应关键字段内容,选择不同远程连接方式,进而匹配不连接目标,下发相应指令和请求,并获取不同返回值;通过SSH协议,连接远程服务器,下发shell指令并获取存储服务器节点后端执行结果;通过HTTP/HTTPS协议向存储服务器应用下发RestfulAPI接口各项请求并获取存储服务器节点前端执行结果。
采用SSH协议时记录shell命令所需信息;其中shell命令所需信息包括:目标ip地址、目标端口号、访问用户、访问密码、连接时间、目标命令体B02、命令选项和命令参数信息;
采用HTTP/HTTPS协议时,抓取所执行的restfulAPI接口信息;其中所执行的restfulAPI接口信息包括目标ip地址目标端口号、访问用户、访问密码、连接时间、目标命令体、命令选项、命令参数信息。
对返回值根据预期结果进行校验,在所有测试用例校验通过后,生成校验报告。将shell命令行的预期信息或RestfulAPI接口请求预期信息,根据需要设置进行校验字符内容和/或校验状态码;如果当前测试用例的所有步骤均符合预期,则判断当前测试用例符合预期,如果有一步不符合预期,则判断当前测试用例不符合预期,采用循环命令遍历所有测试用例,直到所有测试用例校验完成,生成校验报告。
本申请实施例还提供了一种存储介质,即计算机存储介质,具体为计算机可读存储介质,例如包括存储计算机程序的存储器,上述计算机程序可由处理器执行,以完成前述方法所述步骤。计算机可读存储介质可以是FRAM、ROM、PROM、EPROM、EEPROM、Flash Memory、磁表面存储器、光盘、或CD-ROM等存储器。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:移动存储设备、ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。或者,本申请上述集成的单元如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台电子设备(可以是个人计算机、服务器、或者网络设备等)执行本申请各个实施例所述方法的全部或部分。而前述的存储介质包括:移动存储设备、ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
本申请实施例提供的一种存储服务器远程测试的设备和存储介质中相关部分的说明可以参见本申请实施例1提供的一种存储服务器远程测试方法中对应部分的详细说明,在此不再赘述。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。另外,本申请实施例提供的上述技术方案中与现有技术中对应技术方案实现原理一致的部分并未详细说明,以免过多赘述。
上述虽然结合附图对本发明的具体实施方式进行了描述,但并非对本发明保护范围的限制。对于所属领域的技术人员来说,在上述说明的基础上还可以做出其它不同形式的修改或变形。这里无需也无法对所有的实施方式予以穷举。在本发明的技术方案的基础上,本领域技术人员不需要付出创造性劳动即可做出的各种修改或变形仍在本发明的保护范围以内。

Claims (10)

1.一种存储服务器远程测试方法,其特征在于,包括以下步骤:
将测试用例的步骤按照格式要求转换成表格数据,并且在表格中用页区分每个测试用例;
使用通用代码读取所述表格数据,根据不同页中包含的信息,生成不同的测试代码和自动化测试脚本;
根据表格数据中对应关键字段内容,选择不同远程连接方式,进而匹配不连接目标,下发相应指令和请求,并获取不同返回值;
对返回值根据预期结果进行校验,在所有测试用例校验通过后,生成校验报告。
2.根据权利要求1所述的一种存储服务器远程测试方法,其特征在于,所述将测试用例的步骤按照格式要求转换成表格数据具体包括:
将测试用例的步骤转化为包含shell命令行和RestfulAPI的步骤;
将实现测试用例所需的shell命令行、shell命令行参数以及RestfulAPI包含的统一资源定位符、请求头、请求体信息记录于表格文档中;并且每个测试用例在表格中采用页进行区分。
3.根据权利要求2所述的一种存储服务器远程测试方法,其特征在于,所述使用通用代码读取所述表格数据具体包括:
首先对本地表格文件进行读写,然后激活每个测试用例,并为每个测试用例创建页,其中页中的每行元素作为一个列表元素,且所有的列表元素为键值相同的字典,将表格中的内容依次读取放入字典组成的列表中。
4.根据权利要求3所述的一种存储服务器远程测试方法,其特征在于,所述根据表格数据中对应关键字段内容,选择不同远程连接方式,进而匹配不连接目标,下发相应指令和请求,并获取不同返回值具体包括:
通过SSH协议,连接远程服务器,下发shell指令并获取存储服务器节点后端执行结果;
通过HTTP/HTTPS协议向存储服务器应用下发RestfulAPI接口各项请求并获取存储服务器节点前端执行结果。
5.根据权利要求4所述的一种存储服务器远程测试方法,其特征在于,所述根据表格数据中对应关键字段内容,选择不同远程连接方式还包括:
采用SSH协议时记录shell命令所需信息;其中shell命令所需信息包括:目标ip地址、目标端口号、访问用户、访问密码、连接时间、目标命令体B02、命令选项和命令参数信息;
采用HTTP/HTTPS协议时,抓取所执行的restfulAPI接口信息;其中所执行的restfulAPI接口信息包括目标ip地址目标端口号、访问用户、访问密码、连接时间、目标命令体、命令选项、命令参数信息。
6.根据权利要求5所述的一种存储服务器远程测试方法,其特征在于,所述对返回值根据预期结果进行校验,在所有测试用例校验通过后,生成校验报告具体包括:
将shell命令行的预期信息或RestfulAPI接口请求预期信息,根据需要设置进行校验字符内容和/或校验状态码;如果当前测试用例的所有步骤均符合预期,则判断当前测试用例符合预期,如果有一步不符合预期,则判断当前测试用例不符合预期,直到所有测试用例校验完成,生成校验报告。
7.根据权利要求6所述的一种存储服务器远程测试方法,其特征在于,所述方法还包括:采用循环命令遍历所有测试用例,直到所有测试用例检验通过。
8.一种存储服务器远程测试系统,其特征在于,所述系统包括转换模块、读取模块、获取模块和检验模块:
所述转换模块用于将测试用例的步骤按照格式要求转换成表格数据,并且在表格中用页区分每个测试用例;
所述读取模块用于使用通用代码读取所述表格数据,根据不同页中包含的信息,生成不同的测试代码和自动化测试脚本;
所述获取模块用于根据表格数据中对应关键字段内容,选择不同远程连接方式,进而匹配不连接目标,下发相应指令和请求,并获取不同返回值;
所述校验模块用于对返回值根据预期结果进行校验,在所有测试用例校验通过后,生成校验报告。
9.一种设备,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如权利要求1至7任意一项所述的方法步骤。
10.一种可读存储介质,其特征在于,所述可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至7任意一项所述的方法步骤。
CN202110934030.XA 2021-08-16 2021-08-16 一种存储服务器远程测试的方法、系统、设备和存储介质 Active CN113806150B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110934030.XA CN113806150B (zh) 2021-08-16 2021-08-16 一种存储服务器远程测试的方法、系统、设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110934030.XA CN113806150B (zh) 2021-08-16 2021-08-16 一种存储服务器远程测试的方法、系统、设备和存储介质

Publications (2)

Publication Number Publication Date
CN113806150A true CN113806150A (zh) 2021-12-17
CN113806150B CN113806150B (zh) 2024-02-13

Family

ID=78943061

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110934030.XA Active CN113806150B (zh) 2021-08-16 2021-08-16 一种存储服务器远程测试的方法、系统、设备和存储介质

Country Status (1)

Country Link
CN (1) CN113806150B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114490202A (zh) * 2021-12-21 2022-05-13 北京密码云芯科技有限公司 一种密码设备测试方法、装置、电子设备及存储介质
CN115543850A (zh) * 2022-11-04 2022-12-30 中化现代农业有限公司 应用程序接口测试方法、装置、计算机设备及存储介质
CN116521572A (zh) * 2023-07-03 2023-08-01 天津金城银行股份有限公司 网页脚本可视化验证方法、系统、终端设备和存储介质

Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080244524A1 (en) * 2007-03-27 2008-10-02 Tim Kelso Program Test System
CN105302717A (zh) * 2015-09-30 2016-02-03 浪潮集团有限公司 一种大数据平台的检测方法及装置
CN106547689A (zh) * 2016-10-20 2017-03-29 金航数码科技有限责任公司 一种基于web的自动化测试用例开发系统及方法
CN107861872A (zh) * 2017-11-03 2018-03-30 郑州云海信息技术有限公司 一种自动化脚本模板的生成方法、装置、设备及存储介质
CN109189684A (zh) * 2018-08-28 2019-01-11 四川长虹电器股份有限公司 基于Python的接口自动化测试方法
CN110096434A (zh) * 2019-03-28 2019-08-06 咪咕文化科技有限公司 一种接口测试方法及装置
CN110245083A (zh) * 2019-06-11 2019-09-17 四川长虹电器股份有限公司 一种基于python的接口自动化测试方法
CN110502435A (zh) * 2019-07-26 2019-11-26 广东睿江云计算股份有限公司 基于Jmeter的自动化性能测试方法及其系统
CN110941546A (zh) * 2019-10-12 2020-03-31 平安健康保险股份有限公司 Web页面用例的自动化测试方法、装置、设备及存储介质
WO2020119434A1 (zh) * 2018-12-15 2020-06-18 深圳壹账通智能科技有限公司 接口数据处理方法、自动化测试方法、装置、设备和介质
CN111966551A (zh) * 2020-08-21 2020-11-20 苏州浪潮智能科技有限公司 远程命令执行结果的校验方法、系统、终端及存储介质
CN112100080A (zh) * 2020-11-03 2020-12-18 广州市玄武无线科技股份有限公司 控件测试方法、装置、终端设备和计算机可读存储介质
CN113032247A (zh) * 2021-03-05 2021-06-25 深圳市吉祥腾达科技有限公司 一种ubus命令行自动化测试方法及系统

Patent Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080244524A1 (en) * 2007-03-27 2008-10-02 Tim Kelso Program Test System
CN105302717A (zh) * 2015-09-30 2016-02-03 浪潮集团有限公司 一种大数据平台的检测方法及装置
CN106547689A (zh) * 2016-10-20 2017-03-29 金航数码科技有限责任公司 一种基于web的自动化测试用例开发系统及方法
CN107861872A (zh) * 2017-11-03 2018-03-30 郑州云海信息技术有限公司 一种自动化脚本模板的生成方法、装置、设备及存储介质
CN109189684A (zh) * 2018-08-28 2019-01-11 四川长虹电器股份有限公司 基于Python的接口自动化测试方法
WO2020119434A1 (zh) * 2018-12-15 2020-06-18 深圳壹账通智能科技有限公司 接口数据处理方法、自动化测试方法、装置、设备和介质
CN110096434A (zh) * 2019-03-28 2019-08-06 咪咕文化科技有限公司 一种接口测试方法及装置
CN110245083A (zh) * 2019-06-11 2019-09-17 四川长虹电器股份有限公司 一种基于python的接口自动化测试方法
CN110502435A (zh) * 2019-07-26 2019-11-26 广东睿江云计算股份有限公司 基于Jmeter的自动化性能测试方法及其系统
CN110941546A (zh) * 2019-10-12 2020-03-31 平安健康保险股份有限公司 Web页面用例的自动化测试方法、装置、设备及存储介质
CN111966551A (zh) * 2020-08-21 2020-11-20 苏州浪潮智能科技有限公司 远程命令执行结果的校验方法、系统、终端及存储介质
CN112100080A (zh) * 2020-11-03 2020-12-18 广州市玄武无线科技股份有限公司 控件测试方法、装置、终端设备和计算机可读存储介质
CN113032247A (zh) * 2021-03-05 2021-06-25 深圳市吉祥腾达科技有限公司 一种ubus命令行自动化测试方法及系统

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
TU J 等: "The application reseach of mixed program structure based on client-server, browser-server and web service", 2011 INTERNATIONAL CONFERENCE ON BUSINESS MANAGEMENT AND ELECTRONIC INFORMATION *
刘国庆;汪兴轩;: "基于Charles录制会话的HTTP接口自动化测试框架设计与实现", 计算机应用与软件, no. 06 *
周绍凯;姚砺;: "面向网络游戏的自动化接口测试系统设计", 现代计算机(专业版), no. 10 *
王俊;: "DBGrid列属性自动读写的实现", 电脑编程技巧与维护, no. 13 *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114490202A (zh) * 2021-12-21 2022-05-13 北京密码云芯科技有限公司 一种密码设备测试方法、装置、电子设备及存储介质
CN114490202B (zh) * 2021-12-21 2023-06-23 北京密码云芯科技有限公司 一种密码设备测试方法、装置、电子设备及存储介质
CN115543850A (zh) * 2022-11-04 2022-12-30 中化现代农业有限公司 应用程序接口测试方法、装置、计算机设备及存储介质
CN116521572A (zh) * 2023-07-03 2023-08-01 天津金城银行股份有限公司 网页脚本可视化验证方法、系统、终端设备和存储介质
CN116521572B (zh) * 2023-07-03 2023-09-19 天津金城银行股份有限公司 网页脚本可视化验证方法、系统、终端设备和存储介质

Also Published As

Publication number Publication date
CN113806150B (zh) 2024-02-13

Similar Documents

Publication Publication Date Title
CN113806150B (zh) 一种存储服务器远程测试的方法、系统、设备和存储介质
CN103838558B (zh) 网站建站系统及方法、访问网站的方法及网页适配系统
US7739697B2 (en) System and method for creating web services from an existing web site
CN110321504A (zh) 一种页面处理方法及装置
CN108932332A (zh) 静态资源的加载方法及装置
CN107911381A (zh) 应用程序编程接口的访问方法、系统、服务端及客户端
CN107301137A (zh) Rset接口实现方法和装置及电子设备和计算机可读存储介质
US20180262491A1 (en) Method, apparatus, and client terminal device for implementing website fingerprint login
CN104750463B (zh) 一种插件开发方法及系统
JP5039946B2 (ja) クライアント装置およびサーバ装置の間の通信を中継する技術
US9436669B1 (en) Systems and methods for interfacing with dynamic web forms
CN111800511B (zh) 同步登录态的处理方法、系统、设备及可读存储介质
CN113515395A (zh) 一种基于多云管理平台的应用接入方法及装置
CN115268797B (zh) 一种通过WebDav实现系统与对象存储通信的方法
CN116170305A (zh) 家庭网关路由器配置文件数据表自动生成代码的方法
Chen et al. Optimization research and application of enterprise website based on web service
CN113434217B (zh) 漏洞扫描方法、装置、计算机设备及介质
CN112380142A (zh) 接口文档管理方法、装置和测试设备
CN109558375B (zh) 一种优化的文件存储方法、存储介质、设备及系统
CN113656739A (zh) 网站数据的保存方法及装置
CN104113514A (zh) 信息安全的处理方法和装置
CN112434233B (zh) 一种用于加快次级页面首屏渲染的方法与设备
CN114626051A (zh) 一种无需二次开发可快速对软件系统进行鉴权集成的系统及方法
CN115865797A (zh) 一种app跨端页面统一路由的方法及系统
CN112540917A (zh) 一种基于token认证机制实现自动化测试的自动登录的方法

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