CN102880482A - 一种主机批量控制虚拟机中软件自动升级的系统及技术方法 - Google Patents
一种主机批量控制虚拟机中软件自动升级的系统及技术方法 Download PDFInfo
- Publication number
- CN102880482A CN102880482A CN201210277171XA CN201210277171A CN102880482A CN 102880482 A CN102880482 A CN 102880482A CN 201210277171X A CN201210277171X A CN 201210277171XA CN 201210277171 A CN201210277171 A CN 201210277171A CN 102880482 A CN102880482 A CN 102880482A
- Authority
- CN
- China
- Prior art keywords
- virtual machine
- version information
- software
- component programs
- component
- 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
Abstract
本发明公开了一种主机批量控制虚拟机中软件自动升级的系统及技术方法,包括:主机控制虚拟机中一个以上的软件程序;虚拟机中完整的软件程序,该软件程序根据完成功能划分成至少一个独立的组件程序文件;标识所述至少一个独立的组件程序的版本信息;侦测虚拟机中的软件程序,当组件程序的版本信息早于服务器更新库中组件程序的版本信息时,可根据主机控制进行下载升级本地组件程序。根据本发明实施例,虚拟机中的软件程序能使得主机用户随机、有序的升级请求在升级服务器的调度下进行软件升级,即可实现主机批量控制虚拟机中程序的零维护,大量缩减维护人工和工作量,增强体验感受。
Description
技术领域
本发明涉及一种主机批量控制虚拟机中软件自动升级的系统及技术方法。
背景技术
在很多软件公司的测试部门,由于机器不足或者测试方便性等原因,会采用虚拟机技术协助软件测试。在测试产品前,需要升级虚拟机中的软件,以达到最新环境的测试要求。而虚拟机中大量软件的升级,会占据测试人员大量的工作时间,因此,自动化升级被很多公司提及。目前,比较成熟的功能自动化测试工具有QTP,WinRunner,按键精灵等,这些工具基本上采用录制操作步骤,修改脚本,回放脚本的方式进行自动化测试。这些自动化测试工具主要依靠记录相对位置,控件id,图片等,进行操作路径的记录和验证。
正是由于这些自动化测试工具主要依靠记录相对位置,控件id,图片等,进行操作路径的记录和验证,因此当相对位置,图片等有变化时,这些工具所制作的脚本容易失效。而要自动升级多款虚拟机中的软件,涉及到虚拟机的自动连接,转移快照,开启,登录,关闭等操作,用已有的功能自动化测试工具所制作的脚本在控制虚拟机的一系列操作中容易失效,要升级虚拟机中的软件更加困难。而本发明虚拟机中用脚本语言编写软件自动升级脚本,供主机中的主程序调用;主机中的主程序利用vmware提供的vix接口,方便地控制对虚拟机的各种操作,包括对虚拟机中的自动升级脚本的调用。
发明内容
本发明要解决的技术问题是提供一种能有效地节省测试人员的工作时间,且有较好的可维护性和可扩展性的批量控制虚拟机中软件自动升级的系统。
为解决上述问题,本发明采用如下技术方案:一种主机批量控制虚拟机中软件自动升级的系统,包括主机和虚拟机,所述主机,用于部署组件程序发布软件,将最新组件程序发布到服务器端组件库,建立服务器更新库,保存所述组件程序的最新版本信息;所述虚拟机,用于将完整的软件程序根据完成功能划分至少一个独立的组件程序文件单独封装;标识所述至少一个独立的组件程序的版本信息;侦测虚拟机中的软件程序,当组件程序的版本信息早于服务器更新库中组件程序的版本信息时,可根据主机控制进行下载升级本地组件程序。
作为优先,标识所述至少一个独立的组件程序的版本信息,包括:采用所述组件程序命名规则对所述组件程序的版本信息进行标识。
本发明要解决的另一技术问题是提供一种能有效地节省测试人员的工作时间,且有较好的可维护性和可扩展性的批量控制虚拟机中软件自动升级的技术方法。
为解决上述问题,本发明采用如下技术方案:一种主机批量控制虚拟机中软件自动升级的技术方法,包括:主机控制虚拟机中一个以上的软件程序;虚拟机中完整的软件程序,该软件程序根据完成功能划分成至少一个独立的组件程序文件;标识所述至少一个独立的组件程序的版本信息;侦测虚拟机中的软件程序,当组件程序的版本信息早于服务器更新库中组件程序的版本信息时,可根据主机控制进行下载升级本地组件程序。
作为优先,所述标识所述至少一个独立的组件程序的版本信息,包括:采用所述组件程序命名规则对所述组件程序的版本信息进行标识。
作为优先,所述侦测虚拟机中的软件程序,当组件程序的版本信息早于服务器更新库中组件程序的版本信息时,可根据主机控制进行下载升级本地组件程序,包括:侦测功能的开始,在vm中做预先配置,填写完配置文件后,开启主界面;选择需要升级的软件,设定升级时间,判断主机是否开始升级;升级模块完成指令后,弹出对话框是否升级其他软件,再次判断主机是否开始升级,若是,则循环上一步骤;完成所有组件程序升级后,关闭主界面,结束步骤。
本发明主机批量控制虚拟机中软件自动升级的系统及技术方法具有以下优点:根据不同公司的不同应用场景,本系统中只需要修改虚拟机中的升级脚本,并预先配置好虚拟机和填写好虚拟机的配置文件,即可通过主机的控制程序进行调用,从而达到自动升级的目的。同理,若实际项目是需要在每个虚拟机中进行测试任务,可以用测试脚本替代本系统中的升级脚本,从而实现虚拟机中自动测试的目的,即本系统的可扩展性较好。
在虚拟机内部升级软件的过程中,不同的软件有不同的升级方法,也有不同的升级等待时间。本系统中采用Autoit模拟软件升级的一系列操作,通过四种方式进行模拟自动升级:升级进程,相对位置,控件id,图片。
在主程序已经确定,即自动化测试框架已经搭建好的情况下,可由编程能力不是很强的测试人员来编写自动升级脚本。本系统中采用Autoit编写脚本,测试人员也可选用其他自己熟悉的脚本语言进行脚本编写,仅仅需要按照主程序设定的接口进行接口衔接即可,即本系统有较为广泛的适用人群。
附图说明
图1为主机批量控制虚拟机中软件自动升级的技术方法的流程图;
图2为本发明主机批量控制虚拟机中软件自动升级系统的总体流程图;
图3为本发明主机批量控制虚拟机中软件自动升级的系统的升级模块流程图。
具体实施方式
请参阅图1、图2和图3所示,本发明的一种主机批量控制虚拟机中软件自动升级的技术方法,包括:
主机控制虚拟机中一个以上的软件程序;
虚拟机中完整的软件程序,该软件程序根据完成功能划分成至少一个独立的组件程序文件;
标识所述至少一个独立的组件程序的版本信息;
侦测虚拟机中的软件程序,当组件程序的版本信息早于服务器更新库中组件程序的版本信息时,可根据主机控制进行下载升级本地组件程序。
其中,所述标识所述至少一个独立的组件程序的版本信息,包括:
采用所述组件程序命名规则对所述组件程序的版本信息进行标识。
其中,所述侦测虚拟机中的软件程序,当组件程序的版本信息早于服务器更新库中组件程序的版本信息时,可根据主机控制进行下载升级本地组件程序,包括:
侦测功能的开始,在vm中做预先配置,填写完配置文件后,开启主界面;
选择需要升级的软件,设定升级时间,判断主机是否开始升级;
升级模块完成指令后,弹出对话框是否升级其他软件,再次判断主机是否开始升级,若是,则循环上一步骤;
完成所有组件程序升级后,关闭主界面,结束步骤。
一种主机批量控制虚拟机中软件自动升级的系统,包括主机和虚拟机,所述主机,用于部署组件程序发布软件,将最新组件程序发布到服务器端组件库,建立服务器更新库,保存所述组件程序的最新版本信息;
所述虚拟机,用于将完整的软件程序根据完成功能划分至少一个独立的组件程序文件单独封装;标识所述至少一个独立的组件程序的版本信息;侦测虚拟机中的软件程序,当组件程序的版本信息早于服务器更新库中组件程序的版本信息时,可根据主机控制进行下载升级本地组件程序。
其中,标识所述至少一个独立的组件程序的版本信息,包括:
采用所述组件程序命名规则对所述组件程序的版本信息进行标识。
本发明主机批量控制虚拟机中软件自动升级的系统及技术方法具有以下优点:虚拟机中的升级脚本和主机中的控制程序,这两部分相对独立。主机中的控制程序,不会因为虚拟机中的升级脚本的改变而需要重新改动,虚拟机中的升级脚本也不会因为外部控制程序的变更而需要变更。本发明已经制作成“软件自动升级系统”,该系统已成功运行半年,节省了测试人员50%的工作时间。
本发明涉及到虚拟机中多种操作,如连接虚拟机,转移到到指定快照,开启虚拟机,登录虚拟机,关闭虚拟机,制作虚拟机新快照,删除虚拟机旧快照等。虚拟机的一系列操作是升级虚拟机中的软件较为耗时且繁琐的部分,本系统中的主程序正是用来代替这一系列的虚拟机操作。主程序为测试人员提供了用户界面,实质原理是用编程语言调用vmware提供的vix接口,实现虚拟机的自动操作,这些接口是vmware公司预留给编程人员的开放接口,也给予了较为详细的示例资料,为主程序的维护和升级提供了方便。
根据不同公司的不同应用场景,本系统中只需要修改虚拟机中的升级脚本,并预先配置好虚拟机和填写好虚拟机的配置文件,即可通过主机的控制程序进行调用,从而达到自动升级的目的。同理,若实际项目是需要在每个虚拟机中进行测试任务,可以用测试脚本替代本系统中的升级脚本,从而实现虚拟机中自动测试的目的,即本系统的可扩展性较好。
在虚拟机内部升级软件的过程中,不同的软件有不同的升级方法,也有不同的升级等待时间。本系统中采用Autoit模拟软件升级的一系列操作,通过四种方式进行模拟自动升级:升级进程,相对位置,控件id,图片。
在主程序已经确定,即自动化测试框架已经搭建好的情况下,可由编程能力不是很强的测试人员来编写自动升级脚本。本系统中采用Autoit编写脚本,测试人员也可选用其他自己熟悉的脚本语言进行脚本编写,仅仅需要按照主程序设定的接口进行接口衔接即可,即本系统有较为广泛的适用人群。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何不经过创造性劳动想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求书所限定的保护范围为准。
Claims (5)
1.一种主机批量控制虚拟机中软件自动升级的系统,包括主机和虚拟机,其特征在于:所述主机,用于部署组件程序发布软件,将最新组件程序发布到服务器端组件库,建立服务器更新库,保存所述组件程序的最新版本信息;所述虚拟机,用于将完整的软件程序根据完成功能划分至少一个独立的组件程序文件单独封装;标识所述至少一个独立的组件程序的版本信息;侦测虚拟机中的软件程序,当组件程序的版本信息早于服务器更新库中组件程序的版本信息时,可根据主机控制进行下载升级本地组件程序。
2.根据权利要求1所述的主机批量控制虚拟机中软件自动升级的系统,其特征在于,标识所述至少一个独立的组件程序的版本信息,包括:采用所述组件程序命名规则对所述组件程序的版本信息进行标识。
3.一种主机批量控制虚拟机中软件自动升级的技术方法,其特征在于,包括:主机控制虚拟机中一个以上的软件程序;虚拟机中完整的软件程序,该软件程序根据完成功能划分成至少一个独立的组件程序文件;标识所述至少一个独立的组件程序的版本信息;侦测虚拟机中的软件程序,当组件程序的版本信息早于服务器更新库中组件程序的版本信息时,可根据主机控制进行下载升级本地组件程序。
4.根据权利要求1所述的主机批量控制虚拟机中软件自动升级的技术方法,其特征在于,所述标识所述至少一个独立的组件程序的版本信息,包括:采用所述组件程序命名规则对所述组件程序的版本信息进行标识。
5.根据权利要求1所述的主机批量控制虚拟机中软件自动升级的技术方法,其特征在于,所述侦测虚拟机中的软件程序,当组件程序的版本信息早于服务器更新库中组件程序的版本信息时,可根据主机控制进行下载升级本地组件程序,包括:侦测功能的开始,在vm中做预先配置,填写完配置文件后,开启主界面;选择需要升级的软件,设定升级时间,判断主机是否开始升级;升级模块完成指令后,弹出对话框是否升级其他软件,再次判断主机是否开始升级,若是,则循环上一步骤;完成所有组件程序升级后,关闭主界面,结束步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210277171XA CN102880482A (zh) | 2012-08-06 | 2012-08-06 | 一种主机批量控制虚拟机中软件自动升级的系统及技术方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210277171XA CN102880482A (zh) | 2012-08-06 | 2012-08-06 | 一种主机批量控制虚拟机中软件自动升级的系统及技术方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN102880482A true CN102880482A (zh) | 2013-01-16 |
Family
ID=47481821
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210277171XA Pending CN102880482A (zh) | 2012-08-06 | 2012-08-06 | 一种主机批量控制虚拟机中软件自动升级的系统及技术方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102880482A (zh) |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103176890A (zh) * | 2013-03-08 | 2013-06-26 | 清华大学 | 用于记录与重放系统行为的方法及系统 |
CN103399786A (zh) * | 2013-07-31 | 2013-11-20 | 厦门市美亚柏科信息股份有限公司 | 一种基于运行时上下文的出站式服务实现方法及系统 |
CN104102527A (zh) * | 2014-07-10 | 2014-10-15 | 国云科技股份有限公司 | 一种虚拟机软件更新方法 |
CN104410511A (zh) * | 2014-10-27 | 2015-03-11 | 浪潮(北京)电子信息产业有限公司 | 一种服务器管理方法及系统 |
CN104572179A (zh) * | 2014-12-19 | 2015-04-29 | 华为技术有限公司 | 一种基础设施即服务软件升级方法和装置 |
CN104636159A (zh) * | 2013-11-15 | 2015-05-20 | 华为技术有限公司 | 对虚拟机中的软件进行升级的方法和装置 |
CN104636172A (zh) * | 2015-03-09 | 2015-05-20 | 联想(北京)有限公司 | 一种应用升级方法和装置 |
CN105468399A (zh) * | 2015-08-07 | 2016-04-06 | 北京汉柏科技有限公司 | 一种云平台用户软件更新方法 |
CN106227561A (zh) * | 2016-07-20 | 2016-12-14 | 杭州华三通信技术有限公司 | 一种云操作系统升级方法及装置 |
CN106227541A (zh) * | 2016-07-27 | 2016-12-14 | 乐视控股(北京)有限公司 | 一种程序更新下载处理方法及移动终端 |
CN106325859A (zh) * | 2016-08-12 | 2017-01-11 | 华为技术有限公司 | 安装驱动的方法和服务器 |
WO2019136842A1 (zh) * | 2018-01-09 | 2019-07-18 | 武汉斗鱼网络科技有限公司 | 组件发布与编译方法、存储介质、电子设备及系统 |
CN113467893A (zh) * | 2021-07-14 | 2021-10-01 | 山石网科通信技术股份有限公司 | 虚拟机自动化测试方法、装置、存储介质及处理器 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101770375A (zh) * | 2008-12-26 | 2010-07-07 | 新奥特(北京)视频技术有限公司 | 一种软件自动升级的实现方法、系统和装置 |
-
2012
- 2012-08-06 CN CN201210277171XA patent/CN102880482A/zh active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101770375A (zh) * | 2008-12-26 | 2010-07-07 | 新奥特(北京)视频技术有限公司 | 一种软件自动升级的实现方法、系统和装置 |
Cited By (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103176890B (zh) * | 2013-03-08 | 2016-06-01 | 清华大学 | 用于记录与重放系统行为的方法及系统 |
CN103176890A (zh) * | 2013-03-08 | 2013-06-26 | 清华大学 | 用于记录与重放系统行为的方法及系统 |
CN103399786A (zh) * | 2013-07-31 | 2013-11-20 | 厦门市美亚柏科信息股份有限公司 | 一种基于运行时上下文的出站式服务实现方法及系统 |
CN103399786B (zh) * | 2013-07-31 | 2016-12-28 | 厦门市美亚柏科信息股份有限公司 | 一种基于运行时上下文的出站式服务实现方法及系统 |
CN104636159B (zh) * | 2013-11-15 | 2018-09-28 | 华为技术有限公司 | 对虚拟机中的软件进行升级的方法和装置 |
CN104636159A (zh) * | 2013-11-15 | 2015-05-20 | 华为技术有限公司 | 对虚拟机中的软件进行升级的方法和装置 |
CN104102527A (zh) * | 2014-07-10 | 2014-10-15 | 国云科技股份有限公司 | 一种虚拟机软件更新方法 |
WO2016004737A1 (zh) * | 2014-07-10 | 2016-01-14 | 国云科技股份有限公司 | 虚拟机的软件更新方法 |
CN104410511B (zh) * | 2014-10-27 | 2018-07-06 | 浪潮(北京)电子信息产业有限公司 | 一种服务器管理方法及系统 |
CN104410511A (zh) * | 2014-10-27 | 2015-03-11 | 浪潮(北京)电子信息产业有限公司 | 一种服务器管理方法及系统 |
CN104572179B (zh) * | 2014-12-19 | 2018-02-23 | 华为技术有限公司 | 一种基础设施即服务软件升级方法和装置 |
CN104572179A (zh) * | 2014-12-19 | 2015-04-29 | 华为技术有限公司 | 一种基础设施即服务软件升级方法和装置 |
CN104636172A (zh) * | 2015-03-09 | 2015-05-20 | 联想(北京)有限公司 | 一种应用升级方法和装置 |
CN105468399A (zh) * | 2015-08-07 | 2016-04-06 | 北京汉柏科技有限公司 | 一种云平台用户软件更新方法 |
CN106227561A (zh) * | 2016-07-20 | 2016-12-14 | 杭州华三通信技术有限公司 | 一种云操作系统升级方法及装置 |
CN106227541A (zh) * | 2016-07-27 | 2016-12-14 | 乐视控股(北京)有限公司 | 一种程序更新下载处理方法及移动终端 |
CN106325859A (zh) * | 2016-08-12 | 2017-01-11 | 华为技术有限公司 | 安装驱动的方法和服务器 |
CN106325859B (zh) * | 2016-08-12 | 2020-01-21 | 华为技术有限公司 | 安装驱动的方法和服务器 |
WO2019136842A1 (zh) * | 2018-01-09 | 2019-07-18 | 武汉斗鱼网络科技有限公司 | 组件发布与编译方法、存储介质、电子设备及系统 |
CN113467893A (zh) * | 2021-07-14 | 2021-10-01 | 山石网科通信技术股份有限公司 | 虚拟机自动化测试方法、装置、存储介质及处理器 |
CN113467893B (zh) * | 2021-07-14 | 2024-02-02 | 山石网科通信技术股份有限公司 | 虚拟机自动化测试方法、装置、存储介质及处理器 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102880482A (zh) | 一种主机批量控制虚拟机中软件自动升级的系统及技术方法 | |
EP3287901A1 (en) | Simulation including multiple simulators | |
CN112270149B (zh) | 验证平台自动化集成方法、系统及电子设备和存储介质 | |
CN107608695B (zh) | 硬盘固件升级方法、装置及服务器 | |
US9766876B2 (en) | Methods of updating software components, computer systems and memory apparatus | |
CN103514023A (zh) | 一种虚拟机离线自动软件安装的方法及系统 | |
CN110515641A (zh) | 服务器固件的更新方法、装置及系统 | |
GB2508643A (en) | Method for Performing a Regression Test after Modifying Source Code File | |
CN102713774A (zh) | 可编程控制器系统及开发系统 | |
CN104204976A (zh) | 信息处理装置、模拟方法及程序 | |
US9824000B1 (en) | Testing calling code dynamically with random error injection based on user-specified configuration | |
CN103761107B (zh) | 软件包定制的装置及方法 | |
CN1193775A (zh) | 软只读存储器 | |
CN101739289A (zh) | 一种在Linux虚拟机中设置显示模式的方法及装置 | |
CN102662591B (zh) | 数据处理方法和装置 | |
CN103645888B (zh) | 一种自动构建操作系统的系统及方法 | |
CN115480801A (zh) | 一种基于Vue框架的多项目开发部署运行方法和系统 | |
CN110990051B (zh) | 软件包依赖关系的维护方法、装置、介质和设备 | |
CN116301596A (zh) | 一种软件raid构建方法、装置、设备及存储介质 | |
CN113467773A (zh) | 一种实现机器人流程自动化的流程代码复用的方法 | |
CN102857817B (zh) | 一种可动态加载的机顶盒生产系统及方法 | |
CN106201564A (zh) | 在线升级基于内核虚拟机模块的设备和方法 | |
CN104317723A (zh) | 一种驱动程序运行信息的跟踪方法及系统 | |
CN103617063A (zh) | 一种移动终端的软件更新方法和装置 | |
CN110879871B (zh) | 页面菜单的配置方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C12 | Rejection of a patent application after its publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20130116 |