CN110704300A - Tpc-ds自动化测试方法以及tpc-ds测试系统 - Google Patents
Tpc-ds自动化测试方法以及tpc-ds测试系统 Download PDFInfo
- Publication number
- CN110704300A CN110704300A CN201910797028.5A CN201910797028A CN110704300A CN 110704300 A CN110704300 A CN 110704300A CN 201910797028 A CN201910797028 A CN 201910797028A CN 110704300 A CN110704300 A CN 110704300A
- Authority
- CN
- China
- Prior art keywords
- test
- tpc
- target database
- server
- throughput
- 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/3664—Environments for testing or debugging software
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/25—Integrating or interfacing systems involving database management systems
- G06F16/252—Integrating or interfacing systems involving database management systems between a Database Management System and a front-end application
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Debugging And Monitoring (AREA)
Abstract
本申请提供了TPC‑DS自动化测试方法以及TPC‑DS测试系统,用于自动部署TPC‑DS测试所需的测试环境,保证测试环境的稳定性,实现对目标数据库的TPC‑DS自动化测试。方法包括:TPC‑DS测试系统触发目标数据库的TPC‑DS测试任务;TPC‑DS测试系统在硬件设备上部署TPC‑DS测试任务对应的服务器以及目标数据库,为服务器设备或者主机设备;TPC‑DS触发服务器向目标数据库发起TPC‑DS测试,并监听目标数据库对于TPC‑DS测试的响应结果,基于响应结果生成目标数据库的TPC‑DS测试结果;TPC‑DS测试系统触发服务器输出TPC‑DS测试结果。
Description
技术领域
本申请涉及测试领域,尤其涉及TPC-DS自动化测试方法以及TPC-DS测试系统。
背景技术
事务处理性能委员会(Transaction Processing Performance Council,TPC)在推出针对数据库性能的评估所推出的TPC-DS测试基准后,若数据库公司在推出数据库产品时,可结合在TPC-DS测试基准下所开发出的TPC-DS测试工具对该数据库产品进行数据库性能的分析。
容易理解,若能提高TPC-DS测试工具的自动化性能以及测试效率,则可快速对数据库产品进行TPC-DS测试,在第一时间得到数据库产品在TPC-DS测试基准下的性能。
而在实际应用中发现,现有的TPC-DS测试工具,往往需要工作人员挑一台或者多台硬件设备手动搭建测试环境以及目标数据库,才可进行目标数据库的TPC-DS测试,不仅较为耗时,并且还需额外占用企业额外的硬件设备资源。
发明内容
本申请提供了TPC-DS自动化测试方法以及TPC-DS测试系统,用于自动部署TPC-DS测试所需的测试环境,保证测试环境的稳定性,实现对目标数据库的TPC-DS自动化测试。
第一方面,本申请提供了TPC-DS自动化测试方法,方法包括:
TPC-DS测试系统触发目标数据库的TPC-DS测试任务;
TPC-DS测试系统在最空闲的硬件设备上部署TPC-DS测试任务对应的服务器以及目标数据库,硬件设备为服务器设备或者主机设备;
TPC-DS触发服务器向目标数据库发起TPC-DS测试,并监听目标数据库对于TPC-DS测试的响应结果,基于响应结果生成目标数据库的TPC-DS测试结果;
TPC-DS测试系统触发服务器输出TPC-DS测试结果。
可选的,TPC-DS测试包括数据加载测试、功率测试以及吞吐量测试,数据加载测试用于评估目标数据库关于准备数据的速度,功率测试用于评估目标数据库关于单个查询流的处理能力,吞吐量测试用于评估目标数据库关于多个查询流以及更新流的处理能力。
可选的,TPC-DS触发服务器基于响应结果生成目标数据库的TPC-DS测试结果包括:
TPC-DS测试系统触发服务器验证TPC-DS测试的数据规模大小是否符合预设的TPC-DS测试要求;
若符合,则统计数据规模大小,以及分别统计数据加载测试、功率测试以及吞吐量测试三者的测试时长及其测试细节,还统计最空闲的硬件设备的硬件成本以及TPC-DS测试任务的软件成本,并按照预设的结果输出方式形成TPC-DS测试结果。
可选的,TPC-DS触发服务器向目标数据库发起功率测试以及吞吐量测试包括:
TPC-DS测试系统触发服务器根据功率测试,将99个数据查询请求随机排列组合得到功率测试用例集;
根据功率测试用例集的排序,依次向目标数据库发送功率测试用例集中的数据查询请求;
根据吞吐量测试,将数据查询请求以及数据更新请求随机排列组合得到吞吐量测试用例集,吞吐量测试用例集中的每个吞吐量测试用例包括99个数据查询请求以及多个数据更新请求;
根据吞吐量测试用例集的排序,依次向目标数据库发送吞吐量测试用例集中的吞吐量测试用例。
可选的,方法还包括:
TPC-DS测试系统读取硬件设备资源池的分配列队,分配列队用于对硬件设备资源池中不同的硬件设备当前的计算资源占用指标以及存储资源占用指标之和进行排列;
TPC-DS测试系统将当前的计算资源占用指标以及存储资源占用指标之和最小的硬件设备选定为最空闲的硬件设备。
第二方面,本申请提供了TPC-DS测试系统,系统包括:
触发单元,用于触发目标数据库的TPC-DS测试任务;
部署单元,用于在最空闲的硬件设备上部署TPC-DS测试任务对应的服务器以及目标数据库,硬件设备为服务器设备或者主机设备;
触发单元,还用于触发服务器向目标数据库发起TPC-DS测试,并监听目标数据库对于TPC-DS测试的响应结果,基于响应结果生成目标数据库的TPC-DS测试结果;
触发单元,还用于触发服务器输出TPC-DS测试结果。
可选的,TPC-DS测试包括数据加载测试、功率测试以及吞吐量测试,数据加载测试用于评估目标数据库关于准备数据的速度,功率测试用于评估目标数据库关于单个查询流的处理能力,吞吐量测试用于评估目标数据库关于多个查询流以及更新流的处理能力。
可选的,触发单元,具体用于:
触发服务器验证TPC-DS测试的数据规模大小是否符合预设的TPC-DS测试要求;
若符合,则统计数据规模大小,以及分别统计数据加载测试、功率测试以及吞吐量测试三者的测试时长及其测试细节,还统计最空闲的硬件设备的硬件成本以及TPC-DS测试任务的软件成本,并按照预设的结果输出方式形成TPC-DS测试结果。
可选的,触发单元,具体用于:
触发服务器根据功率测试,将99个数据查询请求随机排列组合得到功率测试用例集;
根据功率测试用例集的排序,依次向目标数据库发送功率测试用例集中的数据查询请求;
根据吞吐量测试,将数据查询请求以及数据更新请求随机排列组合得到吞吐量测试用例集,吞吐量测试用例集中的每个吞吐量测试用例包括99个数据查询请求以及多个数据更新请求;
根据吞吐量测试用例集的排序,依次向目标数据库发送吞吐量测试用例集中的吞吐量测试用例。
可选的,系统还包括:
读取单元,用于读取硬件设备资源池的分配列队,分配列队用于对硬件设备资源池中不同的硬件设备当前的计算资源占用指标以及存储资源占用指标之和进行排列;
选定单元,用于将当前的计算资源占用指标以及存储资源占用指标之和最小的硬件设备选定为最空闲的硬件设备。
第三方面,本申请提供了TPC-DS测试系统,包括处理器,处理器用于执行存储器中存储的计算机程序时实现如上述第一方面的任一步骤。
第四方面,本申请提供了可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现如上述第一方面的任一步骤。
从以上技术方案可以看出,本申请具有以下优点:
TPC-DS测试系统可直接触发TPC-DS测试任务,并在触发TPC-DS测试任务后,自动在硬件设备上部署本次TPC-DS测试任务所需的服务器以及目标数据库,从而可大大保证测试环境的稳定性,避免工作人员手动部署的干扰,进而提高TPC-DS测试结果的准确性,并且,由于实现了测试环境的自动部署,还可大大提高测试环境的部署效率,进而提高本次TPC-DS测试任务的测试效率,实现对目标数据库的TPC-DS自动化测试。
附图说明
图1为本申请TPC-DS自动化测试方法的一种流程示意图;
图2为本申请的TPC-DS自动化测试方法的又一种流程示意图;
图3为本申请TPC-DS自动化测试方法的一种流程示意图;
图4为本申请TPC-DS自动化测试方法的一种流程示意图;
图5为本申请TPC-DS测试系统的一种结构示意图;
图6为本申请TPC-DS测试系统的又一种结构示意图。
具体实施方式
本申请提供了TPC-DS自动化测试方法以及TPC-DS测试系统,用于自动部署TPC-DS测试所需的测试环境,保证测试环境的稳定性,实现对目标数据库的TPC-DS自动化测试。
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或模块的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或模块,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或模块。在本申请中出现的对步骤进行的命名或者编号,并不意味着必须按照命名或者编号所指示的时间/逻辑先后顺序执行方法流程中的步骤,已经命名或者编号的流程步骤可以根据要实现的技术目的变更执行次序,只要能达到相同或者相类似的技术效果即可。
本申请中所出现的模块的划分,是一种逻辑上的划分,实际应用中实现时可以有另外的划分方式,例如多个模块可以结合成或集成在另一个系统中,或一些特征可以忽略,或不执行,另外,所显示的或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,模块之间的间接耦合或通信连接可以是电性或其他类似的形式,本申请中均不作限定。并且,作为分离部件说明的模块或子模块可以是也可以不是物理上的分离,可以是也可以不是物理模块,或者可以分布到多个电路模块中,可以根据实际的需要选择其中的部分或全部模块来实现本申请方案的目的。
首先,在介绍本申请之前,首先介绍本申请涉及的TPC-DS测试系统。
在本申请中,TPC-DS测试系统为针对TPC-DS测试搭建于一个或者多个设备上的系统平台,用户可登陆或者通过用户设备(User Equipment,UE)上的客户端访问测试系统,触发目标数据库的TPC-DS测试任务,通过应用本申请提供的TPC-DS自动化测试方法,自动部署TPC-DS测试所需的测试环境,保证测试环境的稳定性,实现对目标数据库的TPC-DS自动化测试。
UE具体可以为智能手机、平板电脑、台式电脑、笔记本电脑、电脑一体机、个人数字助理(Personal Digital Assistant,PDA)、智能手环或者智能手表等终端设备,具体在此不做限定。
下面,则基于上述简单背景的介绍,开始介绍本申请的具体内容。
参阅图1,图1示出了本申请TPC-DS自动化测试方法的一种流程示意图,具体的,本申请TPC-DS自动化测试方法可包括如下步骤:
步骤S101,TPC-DS测试系统触发目标数据库的TPC-DS测试任务;
可以理解,相比于现有的TPC-DS测试工具只能在配置好测试环境后进行自动化测试,本申请提供的TPC-DS测试系统,可在接收UE发起的测试请求或者其他触发条件,直接触发TPC-DS测试任务。
其中,该TPC-DS测试任务,携带了目标数据库的数据库标识,该数据库标识可指示目标数据库,或者,该TPC-DS测试任务,也可携带目标数据库的安装信息,用于TPC-DS测试系统进行目标数据库的实时安装。
步骤S102,TPC-DS测试系统在硬件设备上部署TPC-DS测试任务对应的服务器以及目标数据库;
其中,硬件设备为服务器设备或者主机设备。
在确定硬件设备后,TPC-DS测试系统即可进行本次TPC-DS测试任务所需测试环境的自动部署,即部署TPC-DS测试任务对应的服务器以及目标数据库。
需要说明的是,本申请TPC-DS测试系统所支持的TPC-DS测试中,可在软件层面上将不同的实体设备部署于同一个硬件设备上,并还原实体设备之间的实际交互场景。
也就是说,上述的服务器以及目标数据库,可部署于同一个硬件设备上,或者也可部署于第一以及第二硬件设备上,具体在此不做限定。
步骤S103,TPC-DS触发服务器向目标数据库发起TPC-DS测试,并监听目标数据库对于TPC-DS测试的响应结果,基于响应结果生成目标数据库的TPC-DS测试结果;
在通过上述步骤S102完成测试环境的自动部署后,TPC-DS测试系统即可触发服务器向目标数据库发起TPC-DS测试,可以理解的,该TPC-DS测试中,可涉及到相关请求指令的发起以及数据查询等处理。
目标数据库在接受TPC-DS测试的过程中,服务器即可监听目标数据库对该TPC-DS测试的响应结果。
基于目标数据库对于上述TPC-DS测试的响应结果,服务器即可进行相应的数据处理,形成目标数据库的TPC-DS测试结果。
步骤S104,TPC-DS测试系统触发服务器输出TPC-DS测试结果。
接着,服务器可输出TPC-DS测试结果,完成本次的TPC-DS测试任务。
从上述的内容可看出,本申请提供的TPC-DS自动化测试方法,TPC-DS测试系统可直接触发TPC-DS测试任务,并在触发TPC-DS测试任务后,自动在硬件设备上部署本次TPC-DS测试任务所需的服务器以及目标数据库,从而可大大保证测试环境的稳定性,避免工作人员手动部署的干扰,进而提高TPC-DS测试结果的准确性,并且,由于实现了测试环境的自动部署,还可大大提高测试环境的部署效率,进而提高本次TPC-DS测试任务的测试效率,完成对目标数据库的TPC-DS自动化测试。
在一种实施例中,上述内容提及的TPC-DS测试,具体可包括数据加载测试、功率测试以及吞吐量测试。
其中,数据加载测试用于评估目标数据库关于准备数据的速度,功率测试用于评估目标数据库关于单个查询流的处理能力,吞吐量测试用于评估目标数据库关于多个查询流以及更新流的处理能力。
在又一种实施例中,进一步的,参阅图2示出的本申请TPC-DS自动化测试方法的又一种流程示意图,上述步骤S103中TPC-DS测试结果的生成处理具体可包括:
步骤S201,TPC-DS测试系统触发服务器验证TPC-DS测试的数据规模大小是否符合预设的TPC-DS测试要求,若符合,则触发步骤S202;
可以理解,TPC-DS测试结果的生成,可包括验证处理以及统计处理两个环节。
首先的,服务器先对监听得到的响应结果进行验证处理,验证处理结果的有效性,即验证TPC-DS测试的数据规模大小是否符合预设的TPC-DS测试要求,若符合,再进行接下来的统计处理。
步骤S202,统计数据规模大小,以及分别统计数据加载测试、功率测试以及吞吐量测试三者的测试时长及其测试细节,还统计最空闲的硬件设备的硬件成本以及TPC-DS测试任务的软件成本,并按照预设的结果输出方式形成TPC-DS测试结果。
在统计处理环节中,服务器统计上述的数据规模大小,以及从监听得到的响应结果中统计数据加载测试、功率测试以及吞吐量测试三者的测试时长及其测试细节,还统计最空闲的硬件设备的硬件成本以及TPC-DS测试任务的软件成本,并按照预设的结果输出方式形成TPC-DS测试结果。
统计得到所需的数据后,在按照TPC-DS系统预设的TPCDS测试结果的结果输出方式,形成相应的TPC-DS测试结果,例如具体可通过图文、报表、JSON文件、TXT文件等方式输出TPC-DS测试结果。
在又一种实施例中,上述内容已提及,TPC-DS测试可包括数据加载测试、功率测试以及吞吐量测试,其中,可以理解,数据加载测试从目标数据库本地的数据处理出发,评估其对数据文件生成、测试数据库创建以及表创建等数据处理的速度,而后两者则需通过服务器发起的相关请求指令实现。
具体的,参阅图3示出的本申请TPC-DS自动化测试方法的又一种流程示意图,上述服务器发起功率测试以及吞吐量测试可通过如下步骤实现:
步骤S301,TPC-DS测试系统触发服务器根据功率测试,将99个数据查询请求随机排列组合得到功率测试用例集;
步骤S302,根据功率测试用例集的排序,依次向目标数据库发送功率测试用例集中的数据查询请求;
可以理解,功率测试中,先将99个数据查询请求进行随机排列组合,再按照排序挨个向待测试数据库发送,使得待测试数据库挨个执行数据查询请求,进行可统计目标数据库对每个数据查询请求的响应时间等响应结果。
步骤S303,根据吞吐量测试,将数据查询请求以及数据更新请求随机排列组合得到吞吐量测试用例集;
其中,吞吐量测试用例集中的每个吞吐量测试用例包括99个数据查询请求以及多个数据更新请求。
步骤S304,根据吞吐量测试用例集的排序,依次向目标数据库发送吞吐量测试用例集中的吞吐量测试用例。
可以理解,吞吐量测试,即吞吐量的并发测试,将99个数据查询请求以及数据更新请求随机排列组合,每一个吞吐量测试用例包括99个数据查询请求以及多个数据更新请求。
其中,上述所涉及的数据查询请求用于对目标数据库进行TPC-DS测试对应的数据查询测试,数据更新请求用于对目标数据库进行TPC-DS测试对应的数据维护操作。
在又一种实施例中,参阅图4示出的本申请TPC-DS自动化测试方法的又一种流程示意图,上述硬件设备的确定处理,具体可包括如下步骤:
步骤S401,TPC-DS测试系统读取硬件设备资源池的分配列队;
分配列队用于对硬件设备资源池中不同的硬件设备当前的计算资源占用指标以及存储资源占用指标之和进行排列。
可以理解,硬件设备资源池可配置一分配列队,加入该硬件设备资源池的硬件设备以当前的计算资源占用指标以及存储资源占用指标之和进行排列,并通过其设备标识以及地址进行定位。
相应的,在查找最空闲的硬件设备时,TPC-DS测试系统可先读取分配列队。
步骤S402,TPC-DS测试系统将当前的计算资源占用指标以及存储资源占用指标之和最小的硬件设备选定为最空闲的硬件设备。
在得到分配列队后,TPC-DS测试系统即可根据该分配列队,将当前的计算资源占用指标以及存储资源占用指标之和最小的硬件设备选定为最空闲的硬件设备,即可确定为本次TPC-DS测试任务部署测试环境所需的空闲的硬件设备。
可以理解,在触发目标数据库的TPC-DS测试任务后,TPC-DS测试系统可遍历硬件设备资源池中的硬件设备资源,并从中确定最空闲的硬件设备以搭建TPC-DS测试所需的测试环境。
由于TPC-DS测试系统所部署的测试环境是在硬件设备资源池中空闲的硬件设备上完成的,因此,对于本申请的TPC-DS测试系统,还可合理利用硬件设备资源池中的硬件设备资源,不仅可提高TPC-DS测试系统在实时应用上的灵活性,还可明显降低企业应用本申请的TPC-DS测试系统所需的硬件成本。
以上是对本申请TPC-DS自动化测试方法的介绍,下面开始介绍本申请的TPC-DS测试系统。
参阅图5,图5示出了本申请TPC-DS测试系统的一种结构示意图,具体的,TPC-DS测试系统可包括如下结构:
触发单元501,用于触发目标数据库的TPC-DS测试任务;
部署单元502,用于在最空闲的硬件设备上部署TPC-DS测试任务对应的服务器以及目标数据库,硬件设备为服务器设备或者主机设备;
触发单元501,还用于触发服务器向目标数据库发起TPC-DS测试,并监听目标数据库对于TPC-DS测试的响应结果,基于响应结果生成目标数据库的TPC-DS测试结果;
触发单元501,还用于触发服务器输出TPC-DS测试结果。
在一种实施例中,TPC-DS测试包括数据加载测试、功率测试以及吞吐量测试,数据加载测试用于评估目标数据库关于准备数据的速度,功率测试用于评估目标数据库关于单个查询流的处理能力,吞吐量测试用于评估目标数据库关于多个查询流以及更新流的处理能力。
在又一种实施例中,触发单元501,具体用于:
触发服务器验证TPC-DS测试的数据规模大小是否符合预设的TPC-DS测试要求;
若符合,则统计数据规模大小,以及分别统计数据加载测试、功率测试以及吞吐量测试三者的测试时长及其测试细节,还统计最空闲的硬件设备的硬件成本以及TPC-DS测试任务的软件成本,并按照预设的结果输出方式形成TPC-DS测试结果。
在又一种实施例中,触发单元501,具体用于:
触发服务器根据功率测试,将99个数据查询请求随机排列组合得到功率测试用例集;
根据功率测试用例集的排序,依次向目标数据库发送功率测试用例集中的数据查询请求;
根据吞吐量测试,将数据查询请求以及数据更新请求随机排列组合得到吞吐量测试用例集,吞吐量测试用例集中的每个吞吐量测试用例包括99个数据查询请求以及多个数据更新请求;
根据吞吐量测试用例集的排序,依次向目标数据库发送吞吐量测试用例集中的吞吐量测试用例。
在又一种实施例中,系统还可包括确定单元503,用于遍历硬件设备资源池并确定硬件设备资源池中当前最空闲的硬件设备。
在又一种实施例中,系统还可包括:
读取单元504,读取硬件设备资源池的分配列队,分配列队用于对硬件设备资源池中不同的硬件设备当前的计算资源占用指标以及存储资源占用指标之和进行排列;
选定单元505,用于将当前的计算资源占用指标以及存储资源占用指标之和最小的硬件设备选定为最空闲的硬件设备。
参阅图6,图6示出了本申请提供的TPC-DS测试系统的另一种结构示意图,具体的,本申请提供的TPC-DS测试系统包括处理器601,处理器601用于执行存储器602中存储的计算机程序时实现如图1至图4对应任意实施例中TPC-DS自动化测试方法的各步骤;或者,处理器601用于执行存储器602中存储的计算机程序时实现如图5对应实施例中各单元的功能。
示例性的,计算机程序可以被分割成一个或多个模块/单元,一个或者多个模块/单元被存储在存储器602中,并由处理器601执行,以完成本申请。一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述计算机程序在计算机装置中的执行过程。
TPC-DS测试系统可包括,但不仅限于处理器601、存储器602。本领域技术人员可以理解,示意仅仅是TPC-DS测试系统的示例,并不构成对TPC-DS测试系统的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如TPC-DS测试系统还可以包括输入输出设备、网络接入设备、总线等,处理器601、存储器602、输入输出设备以及网络接入设备等通过总线相连。
处理器601可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等,处理器是TPC-DS测试系统的控制中心,利用各种接口和线路连接整个TPC-DS测试系统的各个部分。
存储器602可用于存储计算机程序和/或模块,处理器601通过运行或执行存储在存储器602内的计算机程序和/或模块,以及调用存储在存储器602内的数据,实现计算机装置的各种功能。存储器602可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据TPC-DS测试系统的使用所创建的数据(比如音频数据、视频数据等)等。此外,存储器可以包括高速随机存取存储器,还可以包括非易失性存储器,例如硬盘、内存、插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)、至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
本申请还提供了可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现如图1至图4对应任意实施例中的TPC-DS自动化测试方法。
可以理解,集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各方法实施例的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的TPC-DS测试系统及其单元的具体工作过程,可以参考图1至图4对应实施例中TPC-DS自动化测试方法的说明,具体在此不再赘述。
综上,本申请提供的TPC-DS自动化测试方法、TPC-DS测试系统以及可读存储介质,TPC-DS测试系统可直接触发TPC-DS测试任务,并在触发TPC-DS测试任务后,自动在硬件设备上部署本次TPC-DS测试任务所需的服务器以及目标数据库,从而可大大保证测试环境的稳定性,避免工作人员手动部署的干扰,进而提高TPC-DS测试结果的准确性,并且,由于实现了测试环境的自动部署,还可大大提高测试环境的部署效率,进而提高本次TPC-DS测试任务的测试效率,完成对目标数据库的TPC-DS自动化测试。
在本申请所提供的几个实施例中,应该理解到,所揭露的TPC-DS测试系统及其单元,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
以上,以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。
Claims (10)
1.一种TPC-DS自动化测试方法,其特征在于,所述方法包括:
TPC-DS测试系统触发目标数据库的TPC-DS测试任务;
所述TPC-DS测试系统在所述硬件设备上部署所述TPC-DS测试任务对应的服务器以及目标数据库,所述硬件设备为服务器设备或者主机设备;
所述TPC-DS触发所述服务器向所述目标数据库发起TPC-DS测试,并监听所述目标数据库对于所述TPC-DS测试的响应结果,基于所述响应结果生成所述目标数据库的TPC-DS测试结果;
所述TPC-DS测试系统触发所述服务器输出所述TPC-DS测试结果。
2.根据权利要求1所述的方法,其特征在于,所述TPC-DS测试包括数据加载测试、功率测试以及吞吐量测试,所述数据加载测试用于评估所述目标数据库关于准备数据的速度,所述功率测试用于评估所述目标数据库关于单个查询流的处理能力,所述吞吐量测试用于评估所述目标数据库关于多个查询流以及更新流的处理能力。
3.根据权利要求2所述的方法,其特征在于,所述TPC-DS触发所述服务器基于所述响应结果生成所述目标数据库的TPC-DS测试结果包括:
所述TPC-DS测试系统触发所述服务器验证所述TPC-DS测试的数据规模大小是否符合预设的TPC-DS测试要求;
若符合,则统计所述数据规模大小,以及分别统计所述数据加载测试、所述功率测试以及所述吞吐量测试三者的测试时长及其测试细节,还统计所述最空闲的硬件设备的硬件成本以及所述TPC-DS测试任务的软件成本,并按照预设的结果输出方式形成所述TPC-DS测试结果。
4.根据权利要求2所述的方法,其特征在于,所述TPC-DS触发所述服务器向所述目标数据库发起功率测试以及吞吐量测试包括:
所述TPC-DS测试系统触发所述服务器根据所述功率测试,将99个数据查询请求随机排列组合得到功率测试用例集;
根据所述功率测试用例集的排序,依次向所述目标数据库发送所述功率测试用例集中的所述数据查询请求;
根据所述吞吐量测试,将所述数据查询请求以及所述数据更新请求随机排列组合得到吞吐量测试用例集,所述吞吐量测试用例集中的每个吞吐量测试用例包括99个所述数据查询请求以及多个所述数据更新请求;
根据所述吞吐量测试用例集的排序,依次向所述目标数据库发送所述吞吐量测试用例集中的所述吞吐量测试用例。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
所述TPC-DS测试系统读取硬件设备资源池的分配列队,所述分配列队用于对所述硬件设备资源池中不同的硬件设备当前的计算资源占用指标以及存储资源占用指标之和进行排列;
所述TPC-DS测试系统将当前的计算资源占用指标以及存储资源占用指标之和最小的硬件设备选定为最空闲的所述硬件设备。
6.一种TPC-DS测试系统,其特征在于,所述系统包括:
触发单元,用于触发目标数据库的TPC-DS测试任务;
部署单元,用于在硬件设备上部署所述TPC-DS测试任务对应的服务器以及目标数据库,所述硬件设备为服务器设备或者主机设备;
所述触发单元,还用于触发所述服务器向所述目标数据库发起TPC-DS测试,并监听所述目标数据库对于所述TPC-DS测试的响应结果,基于所述响应结果生成所述目标数据库的TPC-DS测试结果;
所述触发单元,还用于触发所述服务器输出所述TPC-DS测试结果。
7.根据权利要求6所述的系统,其特征在于,所述TPC-DS测试包括数据加载测试、功率测试以及吞吐量测试,所述数据加载测试用于评估所述目标数据库关于准备数据的速度,所述功率测试用于评估所述目标数据库关于单个查询流的处理能力,所述吞吐量测试用于评估所述目标数据库关于多个查询流以及更新流的处理能力。
8.根据权利要求7所述的系统,其特征在于,所述触发单元,具体用于:
触发所述服务器验证所述TPC-DS测试的数据规模大小是否符合预设的TPC-DS测试要求;
若符合,则统计所述数据规模大小,以及分别统计所述数据加载测试、所述功率测试以及所述吞吐量测试三者的测试时长及其测试细节,还统计所述最空闲的硬件设备的硬件成本以及所述TPC-DS测试任务的软件成本,并按照预设的结果输出方式形成所述TPC-DS测试结果。
9.根据权利要求7所述的系统,其特征在于,所述触发单元,具体用于:
触发所述服务器根据所述功率测试,将99个数据查询请求随机排列组合得到功率测试用例集;
根据所述功率测试用例集的排序,依次向所述目标数据库发送所述功率测试用例集中的所述数据查询请求;
根据所述吞吐量测试,将所述数据查询请求以及所述数据更新请求随机排列组合得到吞吐量测试用例集,所述吞吐量测试用例集中的每个吞吐量测试用例包括99个所述数据查询请求以及多个所述数据更新请求;
根据所述吞吐量测试用例集的排序,依次向所述目标数据库发送所述吞吐量测试用例集中的所述吞吐量测试用例。
10.根据权利要求6所述的系统,其特征在于,所述系统还包括:
读取单元,用于读取所述硬件设备资源池的分配列队,所述分配列队用于对所述硬件设备资源池中不同的硬件设备当前的计算资源占用指标以及存储资源占用指标之和进行排列;
选定单元,用于将当前的计算资源占用指标以及存储资源占用指标之和最小的硬件设备选定为最空闲的所述硬件设备。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910797028.5A CN110704300A (zh) | 2019-08-27 | 2019-08-27 | Tpc-ds自动化测试方法以及tpc-ds测试系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910797028.5A CN110704300A (zh) | 2019-08-27 | 2019-08-27 | Tpc-ds自动化测试方法以及tpc-ds测试系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110704300A true CN110704300A (zh) | 2020-01-17 |
Family
ID=69193665
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910797028.5A Pending CN110704300A (zh) | 2019-08-27 | 2019-08-27 | Tpc-ds自动化测试方法以及tpc-ds测试系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110704300A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114860537A (zh) * | 2022-04-24 | 2022-08-05 | 武汉迎风聚智科技有限公司 | 一种应用于系统测试用的实时系统监控方法以及装置 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102968374A (zh) * | 2012-11-29 | 2013-03-13 | 中国移动(深圳)有限公司 | 一种数据仓库测试方法 |
CN104281584A (zh) * | 2013-07-02 | 2015-01-14 | 北大方正集团有限公司 | Xml数据库性能测试系统及方法 |
CN107273293A (zh) * | 2017-06-16 | 2017-10-20 | 北京小度信息科技有限公司 | 大数据系统性能测试方法、装置及电子设备 |
US9971595B1 (en) * | 2016-01-15 | 2018-05-15 | Jpmorgan Chase Bank, N.A. | Techniques for automated database deployment |
CN109902027A (zh) * | 2019-03-29 | 2019-06-18 | 梁俊杰 | 一种便于实施的tpc-ds测试方法以及系统 |
CN110069406A (zh) * | 2019-03-29 | 2019-07-30 | 梁俊杰 | 自动触发的tpc-ds测试方法以及系统 |
-
2019
- 2019-08-27 CN CN201910797028.5A patent/CN110704300A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102968374A (zh) * | 2012-11-29 | 2013-03-13 | 中国移动(深圳)有限公司 | 一种数据仓库测试方法 |
CN104281584A (zh) * | 2013-07-02 | 2015-01-14 | 北大方正集团有限公司 | Xml数据库性能测试系统及方法 |
US9971595B1 (en) * | 2016-01-15 | 2018-05-15 | Jpmorgan Chase Bank, N.A. | Techniques for automated database deployment |
CN107273293A (zh) * | 2017-06-16 | 2017-10-20 | 北京小度信息科技有限公司 | 大数据系统性能测试方法、装置及电子设备 |
CN109902027A (zh) * | 2019-03-29 | 2019-06-18 | 梁俊杰 | 一种便于实施的tpc-ds测试方法以及系统 |
CN110069406A (zh) * | 2019-03-29 | 2019-07-30 | 梁俊杰 | 自动触发的tpc-ds测试方法以及系统 |
Non-Patent Citations (2)
Title |
---|
何磊: "基于TPC_DS的测试系统研发", 《中国优秀硕士学位论文全文数据库 信息科技辑》 * |
陈旦 等: "TPC_DS性能测试工具的实现", 《计算机应用》 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114860537A (zh) * | 2022-04-24 | 2022-08-05 | 武汉迎风聚智科技有限公司 | 一种应用于系统测试用的实时系统监控方法以及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106294120B (zh) | 测试代码的方法、设备和计算机程序产品 | |
CN108984389B (zh) | 一种应用程序测试方法及终端设备 | |
CN107590075B (zh) | 一种软件测试方法及装置 | |
CN108388509B (zh) | 一种软件测试方法、计算机可读存储介质及终端设备 | |
CN109413147B (zh) | 服务节点的管理方法、装置、设备及计算机可读存储介质 | |
CN107621963B (zh) | 一种软件部署方法、软件部署系统及电子设备 | |
CN114546738A (zh) | 服务器通用测试方法、系统、终端及存储介质 | |
CN110569194A (zh) | 接口测试方法、装置、电子设备及存储介质 | |
CN109902027B (zh) | 一种便于实施的tpc-ds测试方法以及系统 | |
CN113191114B (zh) | 用于验证系统的方法和装置 | |
CN108280024B (zh) | 流量分配策略测试方法、装置及电子设备 | |
CN110704300A (zh) | Tpc-ds自动化测试方法以及tpc-ds测试系统 | |
CN112256588A (zh) | 应用程序测试的资源配置方法、计算机可读存储介质及测试机 | |
CN116974874A (zh) | 数据库的测试方法、装置、电子设备及可读存储介质 | |
CN110022327B (zh) | 一种短信认证测试方法和装置 | |
CN112052070A (zh) | 应用容器化评估方法、装置、电子设备及存储介质 | |
CN112380115A (zh) | 一种回归测试方法、装置、电子设备及存储介质 | |
CN109240914B (zh) | 安全测试任务的监控管理方法及终端设备 | |
CN110704301B (zh) | Tpc-e自动化测试方法以及tpc-e测试系统 | |
CN110704307A (zh) | 应用产品的测试方法、装置、用户设备及计算机存储介质 | |
CN115858114A (zh) | 空闲任务的调度方法、装置、电子设备及可读存储介质 | |
CN109933506A (zh) | 服务器大数据性能评价方法、系统及电子设备和存储介质 | |
CN111008124B (zh) | 数据库测试的任务调度方法以及装置 | |
CN111679924B (zh) | 构件化软件系统可靠性仿真方法、装置及电子设备 | |
CN110737572A (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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20200117 |
|
RJ01 | Rejection of invention patent application after publication |