CN108897609A - 一种机器任务调度方法及装置 - Google Patents
一种机器任务调度方法及装置 Download PDFInfo
- Publication number
- CN108897609A CN108897609A CN201810611148.7A CN201810611148A CN108897609A CN 108897609 A CN108897609 A CN 108897609A CN 201810611148 A CN201810611148 A CN 201810611148A CN 108897609 A CN108897609 A CN 108897609A
- Authority
- CN
- China
- Prior art keywords
- machine
- script
- tasks
- constraint condition
- task
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
-
- 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
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明公开了一种机器任务调度方法,包括以下步骤:读取脚本约束表,获取脚本约束条件;根据脚本约束条件选择机器;创建并分配机器任务;获取机器任务执行结果。根据用例信息查询要执行的脚本的执行约束,根据脚本约束插叙可执行的测试机,创建机器任务,使用java多线程技术,规划调度机器任务,合理分配测试机和执行机。用于自动化脚本执行过程中,可以更快速,更合理的分配机器提高脚本的执行效率和机器的利用率。
Description
技术领域
本发明涉及计算机自动化测试技术领域,尤其是一种机器任务调度方法及装置。
背景技术
随着自动化测试应用的推广,自动化测试用例数量越来越多,运行频率变得更加频繁,加之软件交付的进程逐渐加快,敏捷开发模式、持续集成被更多应用,在自动化脚本执行测试中,当有多个脚本需要执行时,如何利用现有的测试机器来完成所有的脚本执行任务,需要按照一定的规则来合理的安排每一个脚本的机器任务。
发明内容
本发明的目的是提供一种机器任务调度方法及装置,更快速,更合理的分配机器提高脚本的执行效率和机器的利用率。
为实现上述目的,本发明采用下述技术方案:
本发明第一方面提供了一种机器任务调度方法,包括以下步骤:
读取脚本约束表,获取脚本约束条件;
根据脚本约束条件选择机器;
创建并分配机器任务;
获取机器任务执行结果。
结合第一方面,在第一方面第一种可能的实现方式中,所述读取脚本约束表,获取脚本约束条件,具体包括:
通过taskID获取所有用例,遍历用例列表,根据用例编号读取脚本约束。
结合第一方面,在第一方面第二种可能的实现方式中,所述根据脚本约束条件选择机器,具体包括:
根据约束条件从机器信息表中查询并选择符合执行条件的机器;
修改机器状态为不可用。
结合第一方面,在第一方面第三种可能的实现方式中,所述创建并分配机器任务,具体包括:
获取自动化执行任务,创建测试表单,
封装HTTP请求,发送给测试机;
完成全部用例执行,释放占用机器。
结合第一方面,在第一方面第四种可能的实现方式中,所述获取机器任务执行结果,具体包括:
创建子线程,获取任务相关参数;
轮训查询执行状态;
获取执行结果和执行日志;
存储执行结果到自动化执行任务表和项目测试用例任务表。
本发明第二方面提供了一种机器任务调度装置,包括:
机器选择模块,读取脚本约束表,获取脚本约束条件,根据脚本约束条件选择机器;
机器任务创建模块,创建自动化执行任务,生成任务表单,封装HTTP请求发送给测试机;
机器任务查询模块,轮询查询执行状态,获取、存储执行结果和执行日志。
本发明第二方面的所述机器任务调度装置能够实现第一方面及第一方面的各实现方式中的方法,并取得相同的效果。
发明内容中提供的效果仅仅是实施例的效果,而不是发明所有的全部效果,上述技术方案中的一个技术方案具有如下优点或有益效果:
本发明提供了一种在自动化脚本执行中对于执行机器选择的调度方法,更加合理高效的利用好每一台机器,避免资源的浪费,提高开发效率,节约人力成本,保证产品质量。根据用例信息查询要执行的脚本的执行约束,根据脚本约束插叙可执行的测试机,创建机器任务,使用java多线程技术,规划调度机器任务,合理分配测试机和执行机。用于自动化脚本执行过程中,可以更快速,更合理的分配机器提高脚本的执行效率和机器的利用率。
附图说明
图1是本发明实施例一方法流程图;
图2是本发明实施例二方法流程图;
图3是本发明实施例三方法流程图;
图4是本发明装置结构示意图。
具体实施方式
为能清楚说明本方案的技术特点,下面通过具体实施方式,并结合其附图,对本发明进行详细阐述。下文的公开提供了许多不同的实施例或例子用来实现本发明的不同结构。为了简化本发明的公开,下文中对特定例子的部件和设置进行描述。此外,本发明可以在不同例子中重复参考数字和/或字母。这种重复是为了简化和清楚的目的,其本身不指示所讨论各种实施例和/或设置之间的关系。应当注意,在附图中所图示的部件不一定按比例绘制。本发明省略了对公知组件和处理技术及工艺的描述以避免不必要地限制本发明。
实施例一
如图1所示,一种机器任务调度方法,包括以下步骤:
S1、读取脚本约束表,获取脚本约束条件;
S2、根据脚本约束条件选择机器;
S3、创建并分配机器任务;
S4、获取机器任务执行结果。
实施例二
如图2所示,一种机器任务调度方法,包括以下步骤:
S11、读取任务脚本,从脚本约束表获取脚本约束条件。
S12、根据约束条件从机器信息表中查询并选择符合执行条件的机器。
S13、修改机器状态为不可用。
S14、获取自动化执行任务,创建测试表单。
S15、封装HTTP请求,发送给测试机。
S16、完成全部用例执行,释放占用机器。
S17、创建子线程,获取任务相关参数。
S18、轮训查询执行状态。
S19、获取执行结果和执行日志。
S20、存储执行结果到自动化执行任务表和项目测试用例任务表。
实施例三
如图3所示,一种机器任务调度方法,包括以下步骤:
S21、通过taskID获取所有用例;
S22、遍历用例列表;
S23、根据用例编号读取脚本约束;
S24、根据脚本约束查找对应机器,判断是否找到对应机器,是,进入步骤S25;否,填写用例执行结果,进入步骤S30;
S25、创建自动化执行任务;
S26、生成任务表单;
S27、封装HTTP请求,发送给测试机,判断是否创建子线程,是,转入步骤S28;否,转入步骤S30,
S28、轮询执行状态,判断是否完成,是,转入步骤S29,否,重复执行步骤S28;
S29、获取结果,并存储,填写自动化任务结果和用例结果;
S30、判断列表是否结束,是,转入步骤S32,否,进入步骤S31;
S31、取列表中下一个用例编号,转入步骤S23;
S32、结束本流程。
如图4所示,一种机器任务调度装置,包括:
机器选择模块101,读取脚本约束表,获取脚本约束条件,根据脚本约束条件选择机器;
机器任务创建模块102,创建自动化执行任务,生成任务表单,封装HTTP请求发送给测试机;
机器任务查询模块103,轮询查询执行状态,获取、存储执行结果和执行日志。
上述虽然结合附图对本发明的具体实施方式进行了描述,但并非对本发明保护范围的限制,所属领域技术人员应该明白,在本发明的技术方案的基础上,本领域技术人员不需要付出创造性劳动即可做出的各种修改或变形仍在本发明的保护范围以内。
Claims (6)
1.一种机器任务调度方法,其特征是,包括以下步骤:
读取脚本约束表,获取脚本约束条件;
根据脚本约束条件选择机器;
创建并分配机器任务;
获取机器任务执行结果。
2.如权利要求1所述的机器任务调度方法,其特征是,所述读取脚本约束表,获取脚本约束条件,具体包括:
通过taskID获取所有用例,遍历用例列表,根据用例编号读取脚本约束。
3.如权利要求1所述的机器任务调度方法,其特征是,所述根据脚本约束条件选择机器,具体包括:
根据约束条件从机器信息表中查询并选择符合执行条件的机器;
修改机器状态为不可用。
4.如权利要求1所述的机器任务调度方法,其特征是,所述创建并分配机器任务,具体包括:
获取自动化执行任务,创建测试表单,
封装HTTP请求,发送给测试机;
完成全部用例执行,释放占用机器。
5.如权利要求1所述的机器任务调度方法,其特征是,所述获取机器任务执行结果,具体包括:
创建子线程,获取任务相关参数;
轮训查询执行状态;
获取执行结果和执行日志;
存储执行结果到自动化执行任务表和项目测试用例任务表。
6.一种机器任务调度装置,其特征是,包括:
机器选择模块,读取脚本约束表,获取脚本约束条件,根据脚本约束条件选择机器;
机器任务创建模块,创建自动化执行任务,生成任务表单,封装HTTP请求发送给测试机;
机器任务查询模块,轮询查询执行状态,获取、存储执行结果和执行日志。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810611148.7A CN108897609A (zh) | 2018-06-14 | 2018-06-14 | 一种机器任务调度方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810611148.7A CN108897609A (zh) | 2018-06-14 | 2018-06-14 | 一种机器任务调度方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108897609A true CN108897609A (zh) | 2018-11-27 |
Family
ID=64344759
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810611148.7A Pending CN108897609A (zh) | 2018-06-14 | 2018-06-14 | 一种机器任务调度方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108897609A (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1523326A (zh) * | 2003-02-20 | 2004-08-25 | 华为技术有限公司 | 一种环境应力实验自动测试方法 |
CN101042673A (zh) * | 2007-04-20 | 2007-09-26 | 北京航空航天大学 | 软件测试系统及测试方法 |
US20130268917A1 (en) * | 2012-04-10 | 2013-10-10 | Oracle International Corporation | Configurable auto content testing framework for technical documentation |
CN104536744A (zh) * | 2014-12-19 | 2015-04-22 | 微梦创科网络科技(中国)有限公司 | 一种自动化构建与部署代码的方法及服务器 |
CN105335293A (zh) * | 2015-11-30 | 2016-02-17 | 努比亚技术有限公司 | 一种基于接口并行的自动化测试系统和方法 |
CN107704389A (zh) * | 2017-09-26 | 2018-02-16 | 无线生活(杭州)信息科技有限公司 | 一种页面测试方法及装置 |
CN108075938A (zh) * | 2016-11-17 | 2018-05-25 | 迈普通信技术股份有限公司 | 一种自动化测试方法和装置 |
-
2018
- 2018-06-14 CN CN201810611148.7A patent/CN108897609A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1523326A (zh) * | 2003-02-20 | 2004-08-25 | 华为技术有限公司 | 一种环境应力实验自动测试方法 |
CN101042673A (zh) * | 2007-04-20 | 2007-09-26 | 北京航空航天大学 | 软件测试系统及测试方法 |
US20130268917A1 (en) * | 2012-04-10 | 2013-10-10 | Oracle International Corporation | Configurable auto content testing framework for technical documentation |
CN104536744A (zh) * | 2014-12-19 | 2015-04-22 | 微梦创科网络科技(中国)有限公司 | 一种自动化构建与部署代码的方法及服务器 |
CN105335293A (zh) * | 2015-11-30 | 2016-02-17 | 努比亚技术有限公司 | 一种基于接口并行的自动化测试系统和方法 |
CN108075938A (zh) * | 2016-11-17 | 2018-05-25 | 迈普通信技术股份有限公司 | 一种自动化测试方法和装置 |
CN107704389A (zh) * | 2017-09-26 | 2018-02-16 | 无线生活(杭州)信息科技有限公司 | 一种页面测试方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103942099B (zh) | 基于Hive的并行执行任务方法及装置 | |
CN104820640A (zh) | 一种网页测试方法和装置 | |
CN106815027A (zh) | 一种用于电网多维业务复合计算的高弹性计算平台 | |
CN112751692A (zh) | 业务开通方法及装置 | |
Barnes et al. | Automated planning for software architecture evolution | |
CN115858083A (zh) | 容器cpu资源调度与隔离方法和装置、存储介质及电子设备 | |
CN103209180A (zh) | 一种协议一致性测试的方法及系统 | |
Uppström et al. | New implications for customization of ERP systems | |
CN102420709A (zh) | 一种基于任务框架的调度任务管理方法和设备 | |
CN111953503B (zh) | Nfv资源部署编排方法和网络功能虚拟化编排器 | |
WO2016188077A1 (zh) | 拷机测试方法及装置 | |
CN109634714A (zh) | 一种智能调度的方法及装置 | |
CN114461304A (zh) | 配置文件的确定方法和装置、存储介质及电子设备 | |
CN110515734A (zh) | 数据处理任务的负载处理方法及装置 | |
CN108897609A (zh) | 一种机器任务调度方法及装置 | |
CN112015528B (zh) | 一种工业控制系统软件控制流程构建和解析方法 | |
CN103678485B (zh) | 虚拟试验流程节点驱动与活动封装系统 | |
CN108875017A (zh) | 一种基于Sqoop技术的海量数据同步系统及方法 | |
Sun et al. | A model-based system to automate cloud resource allocation and optimization | |
CN106708481A (zh) | 一种控制任务执行的方法 | |
CN109858792B (zh) | 一种基于试验步骤的核电站调试试验任务管理方法和系统 | |
CN106598726A (zh) | 一种多任务管理系统及其分布式部署方法 | |
WO2022253165A1 (zh) | 调度方法、系统、服务器和计算机可读存储介质 | |
CN108776618A (zh) | 分布式工作流管理方法及装置 | |
Indamutsa et al. | MDEForgeWL: Towards cloud-based discovery and composition of model management services |
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: 20181127 |
|
RJ01 | Rejection of invention patent application after publication |