CN110895510A - 一种软件测试方法、装置、电子设备及存储介质 - Google Patents
一种软件测试方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN110895510A CN110895510A CN201911133433.3A CN201911133433A CN110895510A CN 110895510 A CN110895510 A CN 110895510A CN 201911133433 A CN201911133433 A CN 201911133433A CN 110895510 A CN110895510 A CN 110895510A
- Authority
- CN
- China
- Prior art keywords
- software
- test
- test script
- protocol data
- test instruction
- 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.)
- Pending
Links
Images
Classifications
-
- 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/3688—Test management for test execution, e.g. scheduling of test suites
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明实施例公开了一种软件测试方法、装置、电子设备及存储介质,所述软件测试方法包括:获取软件测试指令对应的第一协议数据,基于所述第一协议数据生成所述软件测试指令对应的测试脚本;将所述测试脚本存储至缓存区,以使待测软件从所述缓存区读取所述测试脚本,并基于所述测试脚本进行软件测试。采用本发明提供的方法可以有效提高软件测试效率。
Description
技术领域
本发明涉及软件测试技术领域,具体涉及一种软件测试方法、装置、电子设备及存储介质。
背景技术
CBTC(Communication Based Train Control System,基于通信的列车自动控制系统)是一种可以实现车地之间双向通信的列控系统。为保证CBTC的正常工作,对CBTC的车载设备的软件功能进行测试也显得尤为重要。
现阶段,CBTC厂商通常采用真实的车载设备,即车载设备的实物(以下简称为实物目标机)对实物目标机的软件功能进行测试。具体的,当需要对某车载设备的软件功能进行测试时,测试人员可以在实物车辆仿真系统输入相应的测试指令。然后,实物车辆仿真系统可以将该测试指令发送至对应的实物目标机。之后,实物目标机的软件可以基于前述测试指令控制实物目标机的硬件执行相应的操作,以实现对该车载设备的软件功能的测试。
现有技术中,通过实物目标机进行软件功能测试,可能会因为实物目标机的硬件问题影响到软件功能测试的准确性,进而影响到软件测试效率。
发明内容
由于现有方法存在上述问题,本发明实施例提出一种软件测试方法、装置、电子设备及存储介质。
第一方面,本发明实施例提出一种软件测试方法,包括:
获取软件测试指令对应的第一协议数据,基于所述第一协议数据生成所述软件测试指令对应的测试脚本;
将所述测试脚本存储至缓存区,以使待测软件从所述缓存区读取所述测试脚本,并基于所述测试脚本进行软件测试。
可选的,所述基于所述第一协议数据生成所述软件测试指令对应的测试脚本,包括:
对所述第一协议数据进行解析,生成所述软件测试指令对应的第一测试数据,其中,所述第一测试数据包括所述待测软件对应的车载设备对车辆的输出信号、所述车辆采集到的对所述车载设备的输出信号、仿真应答器报文、速度脉冲信息及雷达脉冲/串口信息;
通过格式化文本记录所述第一测试数据,并基于所述软件测试指令对应的第一测试数据,生成所述软件测试指令对应的测试脚本。
可选的,所述将所述测试脚本存储至缓存区之后,还包括:
周期性的检测所述软件测试指令对应的协议数据是否有更新;
若所述软件测试指令对应的协议数据有更新,则获取所述软件测试指令对应的第二协议数据;
基于所述软件测试指令对应的第二协议数据,更新所述软件测试指令对应的测试脚本。
可选的,所述基于所述软件测试指令对应的第二协议数据,更新所述软件测试指令对应的测试脚本,包括:
确定所述软件测试指令对应的测试脚本是否处于空闲状态,所述空闲状态指所述测试脚本当前无待测软件读取;
若所述软件测试指令对应的测试脚本处于空闲状态,则对所述软件测试指令对应的第二协议数据进行解析,生成所述软件测试指令对应的第二测试数据;
基于所述软件测试指令对应的第二测试数据,更新所述软件测试指令对应的测试脚本。
第二方面,本发明实施例还提出了一种软件测试装置,包括测试脚本生成模块和测试脚本存储模块,其中:
所述测试脚本生成模块,用于获取软件测试指令对应的第一协议数据,基于所述第一协议数据生成所述软件测试指令对应的测试脚本;
所述测试脚本存储模块,用于将所述测试脚本存储至缓存区,以使待测软件从所述缓存区读取所述测试脚本,并基于所述测试脚本进行软件测试。
可选的,所述测试脚本生成模块,用于:
对所述第一协议数据进行解析,生成所述软件测试指令对应的第一测试数据,其中,所述第一测试数据包括所述待测软件对应的车载设备对车辆的输出信号、所述车辆采集到的对所述车载设备的输出信号、仿真应答器报文、速度脉冲信息及雷达脉冲/串口信息;
通过格式化文本记录所述第一测试数据,基于所述软件测试指令对应的第一测试数据,生成所述软件测试指令对应的测试脚本。
可选的,还包括测试脚本更新模块,用于:
周期性的检测所述软件测试指令对应的协议数据是否有更新;
若所述软件测试指令对应的协议数据有更新,则获取所述软件测试指令对应的第二协议数据;
基于所述软件测试指令对应的第二协议数据,更新所述软件测试指令对应的测试脚本。
可选的,所述测试脚本更新模块,用于:
确定所述软件测试指令对应的测试脚本是否处于空闲状态,所述空闲状态指所述测试脚本当前无待测软件读取;
若所述软件测试指令对应的测试脚本处于空闲状态,则对所述软件测试指令对应的第二协议数据进行解析,生成所述软件测试指令对应的第二测试数据;
基于所述软件测试指令对应的第二测试数据,更新所述软件测试指令对应的测试脚本。
第三方面,本发明实施例还提出一种电子设备,包括:
至少一个处理器;以及
与所述处理器通信连接的至少一个存储器,其中:
所述存储器存储有可被所述处理器执行的程序指令,所述处理器调用所述程序指令能够执行上述软件测试方法。
第四方面,本发明实施例还提出一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机程序,所述计算机程序使所述计算机执行上述软件测试方法。
由上述技术方案可知,本发明实施例通过获取软件测试指令对应的协议数据,基于协议数据生成测试脚本存储在缓存区。这样,一方面,可以使得待测软件可以直接从缓存区读取测试脚本进行软件功能测试,从而可以实现纯软件功能的测试,避免硬件问题对软件功能测试的影响,进而可以有效提高软件功能测试的准确性,提高软件测试效率。另一方面,由于测试脚本是存储在缓存区中的,故而无需人工操作,待测软件可以按照自身的周期多次读取测试脚本,重复执行软件功能测试过程,从而可以减少人力资源的消耗,有效提高软件测试效率;同时,当软件进行故障修复后也无需人工重新编写测试脚本,待测软件可以直接从缓存区读取测试脚本执行软件测试,进而进一步地提高软件测试效率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些图获得其他的附图。
图1为本发明一实施例提供的一种软件测试方法的流程示意图;
图2为本发明一实施例提供的一种仿真测试平台的结构示意图;
图3为本发明一实施例提供的一种软件测试装置的结构示意图;
图4为本发明一实施例提供的电子设备的逻辑框图。
具体实施方式
下面结合附图,对本发明的具体实施方式作进一步描述。以下实施例仅用于更加清楚地说明本发明的技术方案,而不能以此来限制本发明的保护范围。
图1示出了本实施例提供的一种软件测试方法的流程示意图,包括:
S101,获取软件测试指令对应的第一协议数据,基于第一协议数据生成软件测试指令对应的测试脚本。
其中,所述第一协议数据指软件测试指令对应的协议数据,该协议数据可以是UDP(User Datagram Protocol,用户数据报协议)协议数据。
在实施中,当需要对某个或某几个软件的软件功能进行测试时,可以获取软件测试指令对应的第一协议数据,基于第一协议数据生成测试脚本存储在缓存区,以使需要进行软件功能测试的软件可以读取对应的测试脚本,以进行软件测试。具体的,可以从仿真系统获取软件测试指令对应的第一协议数据,如该第一协议数据可以是通过UDP协议获取软件测试指令对应的UDP协议数据。然后,可以基于该第一协议数据生成前述软件测试指令对应的测试脚本。可以理解,前述第一协议数据中可以包含多条UDP协议数据,前述测试脚本可以是基于多条UDP协议数据生成的。
S102,将测试脚本存储至缓存区,以使待测软件从缓存区读取测试脚本,并基于测试脚本进行软件测试。
其中,所述待测软件指需要进行软件功能测试的软件。
在实施中,在基于第一协议数据生成软件测试指令对应的测试脚本之后,可以将前述测试脚本存储在缓存区中,如可以通过格式化文本的格式进行存储。当需要对待测软件进行软件功能测试时,待测软件可以从前述缓存区中读取对应的测试脚本,以基于前述测试脚本进行软件测试。可以理解,在对测试脚本进行存储时,可以按照软件标识、测试脚本生成时间等信息进行存储。
由上述技术方案可知,本发明实施例通过获取软件测试指令对应的协议数据,基于协议数据生成测试脚本存储在缓存区。这样,一方面,可以使得待测软件可以直接从缓存区读取测试脚本进行软件功能测试,从而可以实现纯软件功能的测试,避免硬件问题对软件功能测试的影响,进而可以有效提高软件功能测试的准确性,提高软件测试效率。另一方面,由于测试脚本是存储在缓存区中的,故而无需人工操作,待测软件可以按照自身的周期多次读取测试脚本,重复执行软件功能测试过程,从而可以减少人力资源的消耗,有效提高软件测试效率;同时,当软件进行故障修复后也无需人工重新编写测试脚本,待测软件可以直接从缓存区读取测试脚本执行软件测试,进而进一步地提高软件测试效率。
进一步地,在上述方法实施例的基础上,可以对第一协议数据进行解析后生成测试脚本,相应的上述步骤S101的处理可以如下:对第一协议数据进行解析,生成软件测试指令对应的第一测试数据;通过格式化文本记录第一测试数据,并基于软件测试指令对应的第一测试数据,生成软件测试指令对应的测试脚本。
其中,第一测试数据包括待测软件对应的车载设备对车辆的输出信号、车辆采集到的对车载设备的输出信号、仿真应答器报文、速度脉冲信息及雷达脉冲/串口信息。
所述第一测试数据指第一协议数据解析后生成的数据。
在实施中,在获取到软件测试指令对应的第一协议数据之后,可以对前述第一协议数据进行解析,生成第一测试数据,该第一测试数据可以包括待测软件对应的车载设备对车辆的输出信号、车辆采集到的对车载设备的输出信号、仿真应答器报文、速度脉冲信息及雷达脉冲/串口信息。然后,可以通过格式化文本记录前述第一测试数据,并可以基于前述第一测试数据生成上述软件测试指令对应的测试脚本。这样,对第一协议数据进行解析,并通过格式化文本进行存储,能够使得待测软件可以更快的读取到缓存区中存储的测试脚本,从而可以进一步提高软件测试效率。
进一步地,在上述方法实施例的基础上,还可以对缓存区中的测试脚本进行更新,相应的处理可以如下:周期性的检测软件测试指令对应的协议数据是否有更新;若软件测试指令对应的协议数据有更新,则获取软件测试指令对应的第二协议数据;基于软件测试指令对应的第二协议数据,更新软件测试指令对应的测试脚本。
其中,所述第二协议数据指软件测试指令对应的更新后的协议数据。
在实施中,将软件测试指令对应的测试脚本存储至缓存区之后,还可以周期性的检测前述软件测试指令对应的协议数据是否有更新,并根据检测结果确定是否更新缓存区中对应的测试脚本。具体的,首先可以周期性的检测软件测试指令对应的协议数据是否有更新,如可以是每隔1分钟检测一次。若前述软件测试指令对应的协议数据有更新,则可以获取软件测试指令对应的更新后的协议数据,即第二协议数据。然后,可以基于前述软件测试指令对应的第二协议数据,生成新的测试脚本,并基于该新的测试脚本对缓存区中存储的前述软件测试指令对应的测试脚本进行更新。这样,周期性更新缓存区中存储的测试脚本,可以使得待测软件每次读取到的测试脚本均是最新的测试脚本,从而可以进一步地提高软件测试效率。
进一步地,在上诉方法实施例的基础上,还可以根据缓存区中测试脚本的状态确定是否更新测试脚本,相应的处理可以如下,确定软件测试指令对应的测试脚本是否处于空闲状态;若软件测试指令对应的测试脚本处于空闲状态,则对软件测试指令对应的第二协议数据进行解析,生成软件测试指令对应的第二测试数据;基于软件测试指令对应的第二测试数据,更新软件测试指令对应的测试脚本。
其中,所述空闲状态指所述测试脚本当前无待测软件读取。
所述第二测试数据指对第二协议数据进行解析得到的数据。
在实施中,在获取到软件测试指令对应的第二协议数据之后,还可以确定前述软件测试指令对应的测试脚本是否处于空闲状态,即是否有待测软件正在读取该测试脚本,如果是,则认为该测试脚本处于占用状态,如果否,则认为该测试脚本处于空闲状态;或者,当前述测试脚本正在被待测软件读取时,可以对该测试脚本设置信号量,如此,如果检测到测试脚本对应有信号量,则认为该测试脚本处于占用状态,反之,该测试脚本处于空闲状态。然后,若前述软件测试指令对应的测试脚本处于空闲状态,则可以解析前述软件测试指令对应的第二协议数据,生成第二测试数据。之后,可以基于前述第二测试数据,生成新的测试脚本,并基于该新的测试脚本更新缓存区中存储的软件测试指令对应的测试脚本。若前述软件测试指令对应的测试脚本未处于空闲状态,即处于占用状态,则先挂起更新任务,等待测试脚本处于空闲状态后再进行更新。这样,通过判断测试脚本是否空闲以确定是否可以对测试脚本进行更新,可以有效避免出现测试脚本在被读取的同时进行更新的情况,从而可以进一步提高软件测试的准确性,提高软件测试效率。
可以理解,上述各方法实施例的执行主体可以是仿真测试平台,该平台可以是服务器也可以是PC机,该平台可以安装有应用软件和车辆仿真接口驱动,其中,车辆仿真接口驱动可以从仿真系统获取协议数据,并基于协议数据生成测试脚本存储在本地的缓存区中,供应用软件读取;应用软件可以从缓存区中读取测试脚本,以基于测试脚本进行软件功能测试。
现对本发明实施例提供的软件测试方法进行整体说明,具体的,首先,可以对应用软件和平台适配层进行结构划分和接口定义。然后,可以对仿真系统和车辆仿真接口驱动的通信协议进行定义。之后,可以进行车辆仿真接口驱动的开发。再后,可以基于车辆仿真接口驱动生成测试脚本,以使软件可以读取测试脚本并执行。上述仿真测试平台的结构可以如图2所示。
上述对应用软件和平台适配层进行结构划分和接口定义可以如下:应用软件可以通过接口从平台适配层获取数据,该数据可以包括车辆的I/O(Input/Output,输入/输出),外围设备的CAN(Controller Area Network,控制器局域网络)数据、速度传感器的脉冲,车辆TCMS(Train Control and Management System,列车控制和管理系统)的MVB(Multifunction Vehicle Bus,多功能车辆总线)或TRDP(Train Real-time DataProtocol,列车实时数据协议)数据、以及地面设备的网络数据。车载设备的边界如图2所示。故而,应用软件可以通过与平台适配层之间的函数接口可以实现如下功能:获取车辆对车载设备的输入信号、设置车载设备对车辆的输出信号、获取收到的CAN数据、向外部发送CAN数据、获取收到的MVB数据、向外发送MVB数据、获取收到的网络数据、向外发送网络数据等功能。
上述对仿真系统和车辆仿真接口驱动的通信协议进行定义可以如下:定义仿真系统与实物车辆仿真系统的接口驱动间通信协议,该通信协议应与实物车辆仿真系统的通信协议一致,以保证仿真系统的软件可以无缝接入实物车辆仿真系统。通过前述通信协议至少可以获取如下数据:车载设备向车辆的输出信号、车辆采集到的向车载设备的输出信号、仿真应答器报文、速度脉冲信息、雷达脉冲/串口信息等数据。
上述车辆仿真接口驱动的开发主要实现仿真车辆接口驱动对应用软件的接口函数,以及仿真车辆接口驱动和仿真系统的UDP通信。前述两个任务之间操作的数据是共享的,即应用软件从仿真车辆接口驱动读取数据,仿真车辆接口驱动从仿真系统获取并写入数据。为保证应用软件和目标实物机的操作一致,前述应用软件从仿真车辆接口驱动读取数据的线程,及仿真车辆接口驱动从仿真系统获取并写入数据的线程,可以采用信号量+共享内存的方式。仿真车辆接口驱动可以定义所有外部输入输出数据(即UDP数据)的变量或数组,前述两个线程可以共享这部分数据,其中与仿真系统通信的线程仅仅用于写入数据,而应用软件调用的接口函数可以仅仅用于读取数据。当有任务在对数据(即测试脚本)进行操作时,可以对该数据设置信号量;当有其他任务也要对数据进行操作时,若发现设置有信号量值,则挂起任务等待信号量释放后再执行,以防止因读写冲突造成软件执行错误。
上述基于车辆仿真接口驱动生成测试脚本,以使软件可以读取测试脚本并执行可以如下:通过仿真系统进行软件测试时,仿真车辆接口驱动可以从仿真系统获取协议数据,并可以基于协议数据生成测试脚本,即可以将协议数据通过格式化的文本进行记录,这样多条记录可以形成一份测试脚本,并可以将测试脚本存储在本地缓存区;或者,通过仿真系统进行软件测试时,应用软件每次从仿真车辆接口驱动获取一次数据,仿真车辆接口驱动就可以将被应用软件读取的数据通过格式化的文本进行记录,由多条记录可以形成一份测试脚本,并存储在本地缓存区。这样,当应用软件不接入仿真系统但要基于测试脚本进行软件测试时,可以从缓存区读取测试脚本,以基于测试脚本进行软件测试。同时,仿真车辆接口驱动可以周期性的从仿真系统获取UDP数据,并检测该UDP数据对应的测试脚本是否在被应用软件读取,若没有,则立即进行更新,并等待应用软件的下一次读取。这样,应用软件每读取并执行一次测试脚本,就可以完成一次软件测试。
故而,本发明实施例提供的方法,首先,可以实现纯软件(不含硬件平台性能和故障场景)功能测试,剥离平台硬件及环境影响,提高软件测试效率。其次,还可以实现在线调试,可以实现断点调试,从而可以加速软件修改迭代效率,提高软件测试效率。再次,测试脚本的存储可以使测试人员仅通过一遍人工操作,即可生成一个场景的测试脚本,无需多次操作,从而可以降低人力消耗。同时,测试脚本的存储可以实现软件的循环读取,从而可以实现测试脚本的循环执行,进一步提高软件测试效率,且也可以实现软件故障修复后的复测验证,提高研发人员对软件的软件功能修改的效率。
图3示出了本实施例提供的一种软件测试装置,包括测试脚本生成模块301和测试脚本存储模块302,其中:
所述测试脚本生成模块301,用于获取软件测试指令对应的第一协议数据,基于所述第一协议数据生成所述软件测试指令对应的测试脚本;
所述测试脚本存储模块302,用于将所述测试脚本存储至缓存区,以使待测软件从所述缓存区读取所述测试脚本,并基于所述测试脚本进行软件测试。
可选的,所述测试脚本生成模块301,用于:
对所述第一协议数据进行解析,生成所述软件测试指令对应的第一测试数据,其中,所述第一测试数据包括所述待测软件对应的车载设备对车辆的输出信号、所述车辆采集到的对所述车载设备的输出信号、仿真应答器报文、速度脉冲信息及雷达脉冲/串口信息;
通过格式化文本记录所述第一测试数据,基于所述软件测试指令对应的第一测试数据,生成所述软件测试指令对应的测试脚本。
可选的,还包括测试脚本更新模块,用于:
周期性的检测所述软件测试指令对应的协议数据是否有更新;
若所述软件测试指令对应的协议数据有更新,则获取所述软件测试指令对应的第二协议数据;
基于所述软件测试指令对应的第二协议数据,更新所述软件测试指令对应的测试脚本。
可选的,所述测试脚本更新模块,用于:
确定所述软件测试指令对应的测试脚本是否处于空闲状态,所述空闲状态指所述测试脚本当前无待测软件读取;
若所述软件测试指令对应的测试脚本处于空闲状态,则对所述软件测试指令对应的第二协议数据进行解析,生成所述软件测试指令对应的第二测试数据;
基于所述软件测试指令对应的第二测试数据,更新所述软件测试指令对应的测试脚本。
上述软件测试装置可以用于执行上述各方法实施例提供的方法,其实现原理和技术效果类似,在此不再赘述。
图4示出了本实施例提供的一种电子设备,包括:处理器(processor)401、存储器(memory)402和总线403;
其中,
所述处理器401和存储器402通过所述总线403完成相互间的通信;
所述处理器401用于调用所述存储器402中的程序指令,以执行上述各方法实施例所提供的方法。
本实施例公开一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各方法实施例所提供的方法。
本实施例提供一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令使所述计算机执行上述各方法实施例所提供的方法。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (10)
1.一种软件测试方法,其特征在于,包括:
获取软件测试指令对应的第一协议数据,基于所述第一协议数据生成所述软件测试指令对应的测试脚本;
将所述测试脚本存储至缓存区,以使待测软件从所述缓存区读取所述测试脚本,并基于所述测试脚本进行软件测试。
2.根据权利要求1所述的软件测试方法,其特征在于,所述基于所述第一协议数据生成所述软件测试指令对应的测试脚本,包括:
对所述第一协议数据进行解析,生成所述软件测试指令对应的第一测试数据,其中,所述第一测试数据包括所述待测软件对应的车载设备对车辆的输出信号、所述车辆采集到的对所述车载设备的输出信号、仿真应答器报文、速度脉冲信息及雷达脉冲/串口信息;
通过格式化文本记录所述第一测试数据,并基于所述软件测试指令对应的第一测试数据,生成所述软件测试指令对应的测试脚本。
3.根据权利要求1所述的软件测试方法,其特征在于,所述将所述测试脚本存储至缓存区之后,还包括:
周期性的检测所述软件测试指令对应的协议数据是否有更新;
若所述软件测试指令对应的协议数据有更新,则获取所述软件测试指令对应的第二协议数据;
基于所述软件测试指令对应的第二协议数据,更新所述软件测试指令对应的测试脚本。
4.根据权利要求3所述的软件测试方法,其特征在于,所述基于所述软件测试指令对应的第二协议数据,更新所述软件测试指令对应的测试脚本,包括:
确定所述软件测试指令对应的测试脚本是否处于空闲状态,所述空闲状态指所述测试脚本当前无待测软件读取;
若所述软件测试指令对应的测试脚本处于空闲状态,则对所述软件测试指令对应的第二协议数据进行解析,生成所述软件测试指令对应的第二测试数据;
基于所述软件测试指令对应的第二测试数据,更新所述软件测试指令对应的测试脚本。
5.一种软件测试装置,其特征在于,包括测试脚本生成模块和测试脚本存储模块,其中:
所述测试脚本生成模块,用于获取软件测试指令对应的第一协议数据,基于所述第一协议数据生成所述软件测试指令对应的测试脚本;
所述测试脚本存储模块,用于将所述测试脚本存储至缓存区,以使待测软件从所述缓存区读取所述测试脚本,并基于所述测试脚本进行软件测试。
6.根据权利要求5所述的软件测试装置,其特征在于,所述测试脚本生成模块,用于:
对所述第一协议数据进行解析,生成所述软件测试指令对应的第一测试数据,其中,所述第一测试数据包括所述待测软件对应的车载设备对车辆的输出信号、所述车辆采集到的对所述车载设备的输出信号、仿真应答器报文、速度脉冲信息及雷达脉冲/串口信息;
通过格式化文本记录所述第一测试数据,基于所述软件测试指令对应的第一测试数据,生成所述软件测试指令对应的测试脚本。
7.根据权利要求5所述的软件测试装置,其特征在于,还包括测试脚本更新模块,用于:
周期性的检测所述软件测试指令对应的协议数据是否有更新;
若所述软件测试指令对应的协议数据有更新,则获取所述软件测试指令对应的第二协议数据;
基于所述软件测试指令对应的第二协议数据,更新所述软件测试指令对应的测试脚本。
8.根据权利要求7所述的软件测试装置,其特征在于,所述测试脚本更新模块,用于:
确定所述软件测试指令对应的测试脚本是否处于空闲状态,所述空闲状态指所述测试脚本当前无待测软件读取;
若所述软件测试指令对应的测试脚本处于空闲状态,则对所述软件测试指令对应的第二协议数据进行解析,生成所述软件测试指令对应的第二测试数据;
基于所述软件测试指令对应的第二测试数据,更新所述软件测试指令对应的测试脚本。
9.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至4任一所述的软件测试方法。
10.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现如权利要求1至4任一所述的软件测试方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911133433.3A CN110895510A (zh) | 2019-11-19 | 2019-11-19 | 一种软件测试方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911133433.3A CN110895510A (zh) | 2019-11-19 | 2019-11-19 | 一种软件测试方法、装置、电子设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110895510A true CN110895510A (zh) | 2020-03-20 |
Family
ID=69787749
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911133433.3A Pending CN110895510A (zh) | 2019-11-19 | 2019-11-19 | 一种软件测试方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110895510A (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150331779A1 (en) * | 2014-05-13 | 2015-11-19 | Unisys Corporation | Framework to accommodate test plan changes without affecting or interrupting test execution |
CN106815141A (zh) * | 2015-12-02 | 2017-06-09 | 北京奇虎科技有限公司 | 一种软件测试方法和装置 |
CN107704398A (zh) * | 2017-11-01 | 2018-02-16 | 网易(杭州)网络有限公司 | 自动化测试方法及装置、存储介质、电子设备 |
CN108984419A (zh) * | 2018-08-23 | 2018-12-11 | 郑州云海信息技术有限公司 | 一种存储软件测试方法、装置及设备 |
CN109039824A (zh) * | 2018-08-27 | 2018-12-18 | 汽解放汽车有限公司 | 一种车载终端无线远程通信协议自动化测试系统及方法 |
CN109857644A (zh) * | 2018-12-30 | 2019-06-07 | 贝壳技术有限公司 | 一种快速搭建软件测试环境的方法及装置 |
CN110209584A (zh) * | 2019-06-03 | 2019-09-06 | 广东电网有限责任公司 | 一种测试数据自动生成方法和相关装置 |
-
2019
- 2019-11-19 CN CN201911133433.3A patent/CN110895510A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150331779A1 (en) * | 2014-05-13 | 2015-11-19 | Unisys Corporation | Framework to accommodate test plan changes without affecting or interrupting test execution |
CN106815141A (zh) * | 2015-12-02 | 2017-06-09 | 北京奇虎科技有限公司 | 一种软件测试方法和装置 |
CN107704398A (zh) * | 2017-11-01 | 2018-02-16 | 网易(杭州)网络有限公司 | 自动化测试方法及装置、存储介质、电子设备 |
CN108984419A (zh) * | 2018-08-23 | 2018-12-11 | 郑州云海信息技术有限公司 | 一种存储软件测试方法、装置及设备 |
CN109039824A (zh) * | 2018-08-27 | 2018-12-18 | 汽解放汽车有限公司 | 一种车载终端无线远程通信协议自动化测试系统及方法 |
CN109857644A (zh) * | 2018-12-30 | 2019-06-07 | 贝壳技术有限公司 | 一种快速搭建软件测试环境的方法及装置 |
CN110209584A (zh) * | 2019-06-03 | 2019-09-06 | 广东电网有限责任公司 | 一种测试数据自动生成方法和相关装置 |
Non-Patent Citations (2)
Title |
---|
刘畅;刘斌;蒋崇武;: "嵌入式软件仿真测试环境实时数据处理研究", 计算机工程与设计 * |
韩新宇;何伟;张凯;: "基于LoadRunner自动化应用程序接口的舰船装备软件测试系统设计与实现", 计算机测量与控制 * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106708711B (zh) | 一种日志信息输出控制方法及装置 | |
CN112817872A (zh) | 开发测试系统及方法 | |
CN112311773B (zh) | 用于智能汽车传感器接口系统的实现方法 | |
CN110704323B (zh) | 基于轨道交通线路数据的数据自动化测试方法及装置 | |
CN103593271A (zh) | 一种片上系统芯片追踪调试的方法及装置 | |
KR101280287B1 (ko) | 임베디드 소프트웨어 검증장치 및 그 운용방법 | |
CN114662427B (zh) | 一种逻辑系统设计的调试方法及设备 | |
CN113407393B (zh) | 芯片验证方法、终端设备、验证平台以及存储介质 | |
CN110780608A (zh) | 仿真测试方法及装置 | |
US20050204345A1 (en) | Method and apparatus for monitoring computer software | |
CN111198811A (zh) | 一种页面自动化测试的方法、装置、电子设备及存储介质 | |
CN108628734B (zh) | 一种功能程序调试方法和终端 | |
CN108595332B (zh) | 软件测试方法及装置 | |
CN110895510A (zh) | 一种软件测试方法、装置、电子设备及存储介质 | |
CN114896168B (zh) | 用于自动驾驶算法开发的快速调试系统、方法以及存储器 | |
CN112506871B (zh) | 自动化任务管理及日志管理方法、系统、电子设备和介质 | |
CN117597669A (zh) | 一种测试方法、系统及装置 | |
US11262738B2 (en) | Device and method for measuring, simulating, labeling and evaluating components and systems of vehicles | |
CN116701096A (zh) | 云端服务器的测试方法、虚拟机、车机系统和存储介质 | |
KR101174716B1 (ko) | 장비 검증 장치 및 시스템 | |
US8171341B2 (en) | Method for controlling an operating mechanism and a manipulation unit | |
JP2006323726A (ja) | モニタプログラムおよびリアルタイムトレースシステム | |
KR101594439B1 (ko) | 원자력발전소 내의 디지털 계측제어시스템을 위한 검사 장치 및 그 방법 | |
CN117909160B (zh) | 基于物联网的固件崩溃分析方法及装置 | |
JP6884076B2 (ja) | 情報処理装置およびコンピュータプログラム |
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 |