CN103635885A - 通过提供预构建环境的即时可用性来部署用于测试的环境 - Google Patents

通过提供预构建环境的即时可用性来部署用于测试的环境 Download PDF

Info

Publication number
CN103635885A
CN103635885A CN201280032576.5A CN201280032576A CN103635885A CN 103635885 A CN103635885 A CN 103635885A CN 201280032576 A CN201280032576 A CN 201280032576A CN 103635885 A CN103635885 A CN 103635885A
Authority
CN
China
Prior art keywords
topology
environment
resource
storehouse
user
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
CN201280032576.5A
Other languages
English (en)
Other versions
CN103635885B (zh
Inventor
R·S·维度拉
M·F·卡弗
J·S·西普拉
F·A·德斯昌普斯
A·R·多特森
M·D·麦克莱伦
J·L·穆拉莫托
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.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Corp
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 Microsoft Corp filed Critical Microsoft Corp
Publication of CN103635885A publication Critical patent/CN103635885A/zh
Application granted granted Critical
Publication of CN103635885B publication Critical patent/CN103635885B/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/36Preventing errors by testing or debugging software
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/50Testing arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/28Error detection; Error correction; Monitoring by checking the correct order of processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/12Discovery or management of network topologies
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/22Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks comprising specially adapted graphical user interfaces [GUI]

Abstract

部署用于测试的环境。提供不同的拓扑分组的库。向用户呈现用于接收环境定义的界面。自动向用户提供来自不同的拓扑分组的库的元素以便根据接收到的环境定义来创建测试环境。该平台传递针对产品部署和测试工作的所有风格的经完整配置的即时拓扑部署。该拓扑部署服务平台用于创建不同层次的复杂性、不同机器提供者、不同角色、不同产品构件、与合伙人的集成以及不同产品配置的可靠拓扑。一般以自动化的可靠方式启动和创建多个测试和部署环境的能力允许部署复杂的客户场景和配置。

Description

通过提供预构建环境的即时可用性来部署用于测试的环境
发明领域
本发明一般涉及软件测试和部署,尤其涉及用于通过提供预构建环境的即时可用性来部署用于测试的环境的方法、系统和计算机可读存储设备。
背景
软件是普遍存在的且直接或以其它方式接触几乎每个人。因此,软件具有产生广泛可及影响的可能。任何软件产品的影响的特质的主要决定因素随所生产的软件的质量而定。因此,就像软件部署那样,软件测试是用于生产高质量软件产品的过程的有价值功能。软件测试通过检测缺陷并使得在产品发货之前解决这些缺陷来直接有助于提高软件质量。
未检测到并因此留着未解决的软件缺陷导致用户在操作该软件期间经历某种类型的故障。这些故障对软件的生产者可具有显著的成本蕴涵,包括解决从客户报告的故障问题并发布补丁的成本、损失客户信任和信誉、损失或损坏客户数据、由于故障或非顺从性而产生的法律蕴涵等。发布经糟糕测试的软件的后果可通过在软件生产期间防止和消除缺陷来避免。防止发出软件缺陷涉及与稍后在解决这些缺陷时招致的成本相比少得多的提前投资。软件测试还提供软件的客观性独立视图以允许企业认识到并明白软件实现的风险。
软件测试通常分若干阶段进行,例如工程测试、开发测试、阿尔法测试和贝塔测试。已经开发出众多工具来方便软件测试。这些测试工具通常自动化功能测试以确保应用如预期那样工作。此外,软件测试工具可处理对测试的管理、报告和序列化,并提供通用用户界面以供测试管理员开发测试。
许多公司正趋向于集中式测试环境。集中式测试环境通过提供对标准测试方法和过程的一致部署来提供过程一致性,这有助于提高测试质量和效率。另外,集中式测试环境提供由于规模经济和集中花费的益处。
然而,由于被集成到一个环境中的众多构件,集中式测试环境正变得越来越难以维护。随着在线服务的增长并且依赖关系变得越来越混乱,具有开发者可用来确认他们的修复的容易定标和部署的环境变得至关重要。能够维护软件产品的多个版本需要富测试环境来确保软件补丁或热修复,即快速修复工程(QFE),并且使用多遍测试来适当地确认汇总。
当前,测试者可能花费大约一周来部署用于为开发者测试软件的多机器环境。另外,这些种类的组件中的每一个可被单独地访问。其它方案通过使用在用户选择一选项后实时复制环境的自动化任务,一次一个地手动构建配置并将这些配置串接在一起,并对诸如机器检索等每一个不同任务使用不同的工具以及之后的设置工具等来解决这些问题。
可以看到存在对用于通过提供预构建环境的即时可用性来部署用于测试的环境的方法、系统和计算机可读存储设备的需求。
概述
为克服上述限制并且克服在阅读和理解本说明书时可能变得明显的其他限制,公开了用于通过提供预构建环境的即时可用性来部署用于测试的环境的方法、系统和计算机可读存储设备的实施例。
上述问题通过提供一综合平台来解决,该平台用于传递针对产品部署和测试工作的所有风格的经完整配置的即时拓扑部署。该拓扑部署服务平台提供以下能力:创建不同层次的复杂性(单/多机器)、不同机器提供者(物理/VM/Agile)、不同角色(AD、等)、不同产品构件、与合伙人的集成以及不同产品配置的可靠拓扑。一般以自动化的可靠方式启动和创建多个测试和部署环境的能力允许部署复杂的客户场景和配置。
公开了包括一种用于部署用于测试的环境的方法的实施例。该方法包括提供不同拓扑分组的库、向用户呈现用于接收环境定义的界面以及自动向用户提供来自不同拓扑分组的库的元素,以供根据接收到的环境定义来创建测试环境。
在另一实施例中,公开了一种用于部署用于测试的环境的系统。该系统包括资源拣选器、预备器(primer)和客户机网页界面,该资源拣选器用于提供不同拓扑分组的库并被配置成管理资源和实现资源的检入和检出,该预备器用于提供用于使用资源来为不同拓扑分组的库创建拓扑构件的服务套件,该客户机网页界面用于使用户能够提供用于从不同拓扑分组的库中创建所需拓扑的环境定义,其中当通过客户机网页界面接收到环境定义时,预备器自动向用户提供来自不同拓扑分组的库的元素以供根据接收到的环境定义来创建测试环境。
公开了包括可执行指令的计算机可读介质,这些指令在由处理器执行时提供一种用于部署用于测试的环境的方法。该计算机可读介质包括可被执行以进行以下操作的指令:提供不同拓扑分组的库、向用户呈现用于接收环境定义的界面以及自动向用户提供来自不同拓扑分组的库的元素以供根据接收到的环境定义来创建测试环境。
这些和各种其他优点和新颖特征在所附权利要求书中详尽指出,并构成其一部分。然而,为了理解所揭示的实施例、优点和所获得的目标,可对构成其一部分的附图以及伴随的描述内容作出引用,其中有所揭示的实施例的例示出和描述出的具体示例。
附图简述
现在参考附图,在全部附图中,相同的附图标记表示相应的部分:
图1是根据一个实施例的被配置成通过提供预构建环境的即时可用性来部署用于测试的环境的拓扑部署系统的框图;
图2是根据一实施例的拓扑部署服务器(TDS)平台的组件/模块的框图;
图3示出了根据一实施例的模板机构的框图;
图4是根据一实施例的拓扑部署服务(TDS)系统的详细框图;
图5是根据一实施例的TDS栈的图示;
图6示出了根据一实施例的TDS web客户机前端;
图7是根据一实施例的用于通过提供预构建环境的即时可用性来部署用于测试的环境的方法的流程图;以及
图8示出了根据一实施例的计算环境。
详细描述
本文描述的实施例涉及用于通过提供预构建环境的即时可用性来部署用于测试的环境的方法、系统和计算机可读存储设备。
图1是根据一个实施例的被配置成通过提供预构建环境的即时可用性来部署用于测试的环境的拓扑部署系统100的框图。数据处理系统可包括被配置成通过网络160通信地耦合到一个或多个客户机计算机170的拓扑部署服务(TDS)平台110。TDS平台110可包括多个模块或组件。在图1中,TDS服务器112呈现可被自动提供给用户的不同拓扑分组的库。来自由TDS服务器112呈现的不同拓扑分组的库的元素由此可被用户用来根据接收到的环境定义来创建测试环境。在图1中,只示出了用于TDS平台110的控制器150、功能数据库130、拓扑数据库140和预安排的测试用例数据库120。下文将描述TDS平台110的更详细的描述。TDS平台110向客户机计算机170处的用户提供用于访问、配置和部署各种拓扑的界面。
TDS平台110提供一综合平台,该综合平台用于传递针对产品部署和测试工作的所有风格的经完整配置的即时拓扑部署。TDS平台110提供以下能力:创建不同层次的复杂性(单/多机器)、不同机器提供者(物理/VM/Agile)、不同角色(广告、
Figure BDA0000449695860000041
等)、不同产品构件、与合伙人的集成以及不同产品配置的可靠拓扑结构。一般以自动化的可靠方式启动和创建多个测试和部署环境的能力允许部署复杂的客户场景和配置。
例如,TDS平台110提供对拓扑的多个变体的支持。开发者和测试者两者都可经由客户机计算机170来操作并确认工作项、特征和/或隐错。TDS平台110允许各团队将多个产品集成到单个测试环境中。此外,服务团队可使用TDS平台110来与多个合伙人和配置一起工作,且企业团队可与多个合伙人一起工作。还支持用于手动或自动测试通过的拓扑。另外,程序管理员可将该平台用作用于提供拓扑部署展示的环境。
TDS平台110还提供统一语言和机制以供所有团队部署环境,由此精简与其它组件、合伙人团队和产品的协作。该平台的能力通过这些拓扑是即时可用的事实来进一步强化。该平台的附加值在于只向用户提供成功的拓扑构建。TDS平台110被结构化为允许该能力延伸至具有他们自己的拓扑和资源的多个团队的服务。
TDS平台110的实施例提供对拓扑数据库140的即时访问、将预感知线任务与终端用户区分开的能力、基于不同的工作负载要求来提供不同机器的能力、创作多个构件并将其表现为可重用实体的能力以及对资源使用多个机器提供者的能力。
图2是根据一实施例的TDS平台110的组件/模块的框图。TDS平台110是允许用户通过提供预构建环境的即时可用性来部署用于测试的环境的系统。TDS系统110包括提供产生综合解决方案的不同功能的多个层、模块或组件,包括预备器210、资源拣选器220、拓扑构建器230、OML(孤立机器定位器)工具240、OCR(孤立客户机恢复)工具250、ALIS(全部实验室集成服务)系统260、作为前端接口的TDS web客户机270以及模板机构280。
预备器210提供用于将资源预构建成常见拓扑构件的服务套件。资源拣选器220是用于虚拟和物理机器以及诸如电话、
Figure BDA0000449695860000051
盒子、IP地址等其它资源类型的中央管理器。资源拣选器220担当对于所有资源的管理器并实现资源的检入和检出。资源可以是机器、IP地址、拓扑需要部署的任何东西。
拓扑构建器230使用一般客户机驱动的任务引擎290来部署拓扑环境。OML工具240和OCR工具250提供用于定位并重新供应环境中的由于软件或硬件故障而产生的孤立资源的工具和服务的集合。ALIS系统260是管理团队的虚拟机(VM)以及诸如Agile实验室等VM端点的服务。Agile实验室是为各团队提供机器和VM的资源提供者。ALIS系统260通过捕捉快照并在需要时使过程反转来管理VM。ALIS系统260还与其它外部资源环境一起工作以便在需要更多资源时检出资源。
TDS web客户机270提供被结构化为提供管理用户界面以供终端用户检出和检入拓扑的网页的客户机前端。模板机构280提供用于将配置表示为创建富拓扑的可重用构件的共用语言和开发平台。为每一个环境提供模板机构280,其中基于XML的模板定义拓扑。
预备器210表示将资源预构建成普通拓扑构件的服务套件。如果该问题被想象成零售供应链,则预备器210担当理货员,该理货员在库房跑来跑去并取出更多产品放在货架上,以使得当用户需要一拓扑构件时,该拓扑构件就在那里等着。
预备器210通过重复来缓解不可靠的部署。如果需要实现安装有SQL
Figure BDA0000449695860000061
以及权利管理服务器和客户机的域控制器的2008R2服务器,则预备器210将保持重新尝试创建该环境,而不管设置失败多少次。预备器210始终继续工作和构建拓扑以使得拓扑构件始终就绪。
预备器210通常不尝试在单个步骤中完整地配置机器。相反,预备器210使用多层步骤来创建所需环境,这被称为“分阶段部署”。该思路基本上是考虑预备器210内部的池结构以及管理员定义的这些池之间的路径以使得正确的端点始终准备好工作的一种方式。
预备器210的池结构在以该多层格式结构化时是最强大的。第一层通常建立基础平台。将
Figure BDA0000449695860000063
机器用作示例多分区机器,第一层创建并使用第二分区来安装将作为测试环境的
Figure BDA0000449695860000064
的另一副本。第二层然后用于在平台之上进行的更专门化的配置。在
Figure BDA0000449695860000065
的情况下,诸如域控制器创建或SQL
Figure BDA0000449695860000066
安装等元素通常在此处进行。
对于拓扑部署服务环境,第三层取得更多定制配置并将其变成完全预先安装的测试环境。将Office365团队用作示例,该过程通常包括安装
Figure BDA0000449695860000067
Windows
Figure BDA0000449695860000068
在线服务、BOS在线服务等。由此,用户想要已经配置且准备好被简单、快速地检出的拓扑构件。另外,该分层结构提供了用于在要创建新环境的情况下从中检出的附加跳转点。
预备器210使用两个底层子系统来完成其工作,即资源拣选器220和拓扑构建器230。预备器210使用拓扑构建器230和资源拣选器220来取得可用的机器并将其移至需要资源的预定义地点。例如,如果需要三个机器的分组,则拓扑构建器230被配置成构建这三个机器,而预备器210使用资源拣选器220来检出这三个机器,将一工作注入拓扑构建器230以提供所需分组。对于系统需要的每一个配置,该过程始终重复。换言之,预备器210自动检查和监视以及构建所需分组。
例如,用户使用可以是诸如TDS web等网页的TDS web客户机270来访问前端,并且请求
Figure BDA0000449695860000069
的当前版本。获取具有
Figure BDA00004496958600000610
产品的当今版本的拓扑。
Figure BDA00004496958600000611
产品已经被安装并准备好使用,只要用户需要。在
Figure BDA00004496958600000612
产品被检出后,该系统执行更新并标识环境丢失。例如,所维护的
Figure BDA0000449695860000071
产品的目标数量可以是50,但现在只有49个当今的
Figure BDA0000449695860000072
产品可用。由此,构建另一环境。该系统访问模板汇编器(参见图3中的模板汇编器310)以获取用于构建另一个当今
Figure BDA0000449695860000073
的模板。该模板提供关于如何构建一个当今
Figure BDA0000449695860000074
的指令。该系统访问资源拣选器220并标识用于部署该模板的机器。
资源拣选器220被用来跟踪所有资源的当前状态。预备器210将资源拣选器220视作系统的当前库存并通过将需要什么的池配置与资源拣选器220将什么指示为当前可用进行比较来做出关于接下来要创建什么的决策。资源拣选器220由此提供资源并指示拓扑构建器230来部署该模板。
例如,当拓扑构建器230开始实现当今
Figure BDA0000449695860000075
的副本时,如果该过程成功,则该系统验证所需数量的拓扑再次可用,例如可能需要这些拓扑中的50个。如果该过程失败,则启动OML工具240和OCR工具250以修复该过程。如果设备是物理机器,则重新供应盒子。如果设备是在主机上运行的虚拟机,则该系统知道如何与该虚拟机交互,且ALIS系统260被用来通过捕捉快照、停止VM并重启VM来修复该VM。一旦VM回到在线,预备器210就知道如何开始再次与该机器交互。
拓扑构建器230是执行引擎。当预备器210需要创建或替换特定类型的资源时,预备器210创建将资源变换成所需状态的拓扑构建器230工单。预备器210向资源拣选器220查询要变换的机器并且然后告知拓扑构建器230根据该工单中的步骤来变换该机器。
拓扑构建器230可以与可以基于映像的虚拟机(VM)交互,或者拓扑构建器230可以与可能需要测试环境插入其中的大量物理机器交互。一些VM是静态的且可按名称选择资源以使得提供要引用的端点。其它VM更像是可以在需要时远程地从零构建的
Figure BDA0000449695860000076
机器。
如果开发者想要具有一个或两个服务器(一个AD以及一个以及可能的用于
Figure BDA0000449695860000078
的另一个服务器等)的测试拓扑,则可预构建各个组件以及可能的拓扑本身。如果开发者将要在检入某一代码之前检出该代码并打破
Figure BDA0000449695860000079
Figure BDA00004496958600000710
之间的插管(intubation),则执行确认以确保构件存在并且运行测试。为了运行这些测试,机器运行拓扑。就是这个系统还可被用来租用这些拓扑以确认软件或构建内部解决方案。
高度可用的部署资源的有效循环通过OML(孤立机器定位器)工具240、OCR(孤立客户机恢复)工具250和ALIS(所有实验室集成服务)系统260来在TDS系统110中维护。这三个系统提供无论资源进入什么状态、TDS系统110都将进行自动纠正并快速且高效地将其拉回而无需人类交互的高置信度。
OML工具240提供的服务被用来标识TDS系统110中变成‘丢失’或‘孤立’的任何部署资源,并且将该资源转交给适当的子系统以便进行自动恢复。该过程过去是昂贵的手动过程。然而,OML工具240用被设为检测基础结构中的任何地方的孤立资源的可扩展SQL规则来自动化该过程。
结合OML工具240工作,OCR工具250提供的服务被用来管理恢复孤立的物理资源。对处于未知或丢失状态的物理资源的攻击模式是完全对该资源进行重新映像并且一旦依靠经配置的RunOnce完成就将该资源重新添加到TDS系统110。如果在重新映像期间遇到任何故障,则OCR工具250打开具有相关机器信息、资产号和实验室位置的SCOM警告以由操作团队调查。
OCR工具250的服务被用来通过将
Figure BDA0000449695860000081
部署服务(WDS)专用设置写入到基础结构活动目录(IAD)中的机器帐户并且然后重新引导该机器来远程地对资源进行重新映像。这些设置触发机器联系基础结构WDS服务器并且在下一次重新引导或打开该机器时自动将指定映像安装到该机器上。
对于出于任何原因(丢失网络连接、关闭等)而无法联系的机器,OCR工具250向经注册的web服务发送远程硬动力循环(hard power cycle)该机器的SOAP请求,以由此确保可出于任何原因且在任何时刻强制进行硬引导。OCR工具250和OML工具240闭合TDS系统110中的任何丢失的物理资源上的环路以便始终保持高测试资源可用性。
ALIS系统260是包括管理TDS系统110中的每一个虚拟机(VM)的3个插件服务的独立系统。这些服务以用户能够检入、检出、捕捉配置快照并且在VM提供者插件从基类中实现并被添加到ALIS系统260的配置的情况下回复来自任何源的任何VM的方式设计。可以在没有服务修改的情况下创建新的VM提供者插件。TDS系统110中的所支持的VM提供者可包括Agile实验室、Virtucon(
Figure BDA0000449695860000091
主存的VM)以及使用Virtucon格式和
Figure BDA0000449695860000092
的合伙人团队VM。当然,本发明的实施例并不意味着被限于以上列出的VM提供者。
当TDS系统110出于任何原因需要附加资源时,ALIS系统260可被触发以从任何指定源检出VM。一旦供应,VM就可被自动添加到表示TDS系统110的部署环境的栈和所请求的筒仓。
筒仓是用于将各团队彼此隔离并确保向合适的团队分配正确的资源集的构造。这还为服务提供用于允许合伙人具有除了将由正常的开发团队使用之外的他们自己的配额、他们自己的机器以及他们自己的环境的结构。
由此,供应可被自动添加到TDS系统110的栈和所请求的筒仓。将团队资源分配用作示例,可能存在三个开发团队:
Figure BDA0000449695860000093
团队、
Figure BDA0000449695860000094
团队和
Figure BDA0000449695860000095
团队。可以给
Figure BDA0000449695860000096
团队合计一百个资源。如果在
Figure BDA0000449695860000097
中时用户访问TDS系统110并想要检出测试环境,则该用户从中检出测试环境。换言之,中的人在没有准许的情况下不被允许从
Figure BDA00004496958600000910
中检出。对于Agile实验室模型,记账被结合到每一个请求中以确保只为其资源使用对适当的团队记账。
当出于任何原因需要恢复虚拟机(VM)时,例如用户发布拓扑或者由OML工具240标识VM,ALIS系统260从TDS系统110中解除VM的注册,将该VM回复到经配置的基本快照,并且该VM通过经配置的RunOnce步骤自动以干净的状态重新进入基础结构。在对物理资源进行重新映像花费至少15-30分钟的情况下,该工作流花费平均1-3分钟来使得机器回到TDS系统110中并就绪。
由此,诸如在机器正被构建成包括域控制器且该机器重新引导但在重新引导期间挂起时,TDS系统110观察资源拣选器220和拓扑构建器230以寻找各种不同的症状。如果该机器未在预定时间段内恢复并与TDS系统110通信,则OML工具240将注意到该情况并取回该机器以便重新供应。OCR工具250就在这里开始。OCR工具250知道如何清除机器的记录。由此,OCR工具250使用资源拣选器220和拓扑构建器230来清除该机器,以使得当该机器回来时,它将正确地工作并在该机器是物理盒子时触发
Figure BDA00004496958600000912
的重新安装或者在该机器是虚拟机时指示ALIS系统260摆脱该VM。ALIS系统260将检入该VM并破坏该VM或者将该VM回复到已知的良好状态并将带回到线上。如果TDS系统110中已经没有物理资源一段时间,例如硬盘驱动器问题,则OCR工具250可以在某些情况下使用远程硬件来重新引导盒子。由此,OCR工具250尝试在没有人类交互的情况下推动机器。仅当该尝试失败时,用户才必须物理地接触该盒子。监视被构建到OCR工具250中,该监视在OCR工具250无法成功地重新供应资源时警告操作。
当开发者使用TDS中的拓扑来完成时,该开发者访问网页并检入该拓扑。如果该拓扑是VM,则该系统将立即标记资源拣选器220中的属性,ALIS系统260观察已经发布的那些属性。ALIS系统260将通过停止虚拟机来回收该机器,而不管与该虚拟机相关联的虚拟机提供者是哪一个。该虚拟机可来自内部主机、来自内部Agile实验室服务或来自ALIS系统260访问的任何VM提供者。取决于哪一个VM提供者,ALIS系统260可停止VM,将其回复到已知状态并启动该VM。如果OCR工具250检测到VM丢失,则OCR工具250触发ALIS系统260来启动对VM的清除。可以向VM提供者发放控件。如果VM直接是一主机,则ALIS系统260可联系VM主机并指示该VM主机停止特定VM,将该VM回复到快照并启动该VM。或者,如果VM是像Agile实验室的服务,则ALIS系统260指示Agile实验室回复VM。观察者服务观察所有请求以确保不丢弃请求。例如,如果Agile实验室已被指示回复VM,但自从Agile实验室被指示以来已经太长的时间没有回复VM,则观察者服务器发送新请求。ALIS系统260可以从资源中获取VM。如果存在能够提供新虚拟机的新资源提供者,则可添加新插件以允许ALIS系统260对新提供者做出请求。
图3示出了根据一实施例的模板机构300的框图。模板机构300通过使用共同语言和开发机制来表示然后可被组合的不同构件来提供丰富的场景。共同语言和开发机制通过使用模板汇编器310、词典/意图文件320、任务链330和拓扑核查(topology cop)340(即用于模板确认)来提供。
任务链330是绑定在一起的产生拓扑片段的逻辑任务组。词典/意图文件320参考任务链330以及将用所需任务的最新版本在被构建时替换的其它变量来描述拓扑将看上去像什么。模板汇编器310和拓扑核查340提供检查以确保所得拓扑的准确性。
该模板机构300允许快速创建跨越多个机器、不同配置的丰富且复杂的场景,并向软件开发和测试团队提供可靠的即时环境。对于任务链330,当构建多机器环境时,成员机器加入该域。显然,域是在成员加入该域之前创建的。如果存在已构建的四个机器并且一个机器是域控制器,则其它三个机器是加入该域的成员机器。这三个机器将等待直到创建活动目录。只要创建了活动目录,这三个机器就继续它们的任务。这可被构建到在部署期间需要的任何其它依赖关系。
任务链330涉及定义可重用构件。例如,如果创建域控制器的事件序列是已知的,则可使用任务链330来定义可重用构件,以使得其它开发者不必周而复始地重新发明相同的构件。域控制器可被定义,并且测试环境的多个不同实现可重用该构件。由此,访问量330方便定义用于可重用性的常见任务并提供创建这些多个机器环境并同步事件以使得事件不会无序发生的快速且容易的方式。
一旦已经汇编这些环境,拓扑核查340就执行确认。拓扑核查340是对照其运行拓扑以确认拓扑以使得当拓扑被注入环境时经确认的拓扑将实际起作用的工具。这节省了资源以防止浪费。例如,如果任务链330具有尚未被指定的必需设置,则拓扑核查将检测到该未指定的设置并通知开发者该设置未被设定。
图4是根据一实施例的拓扑部署服务(TDS)系统110的详细框图。在图4中,预备器210提供数据库和服务套件,其中各自执行单个简单任务。预备器210提供供应拓扑部署所需的常见构件的公知阶段/池。预备器210提供用于将资源预先构建成常见拓扑构件的服务套件并担当对于虚拟和物理机器以及诸如电话、
Figure BDA0000449695860000111
盒子、IP地址等其它资源类型的中央管理器。预备器提供对所有资源的管理并实现资源的检入和检出。不可靠的部署由预备器210通过重复并通过使用多层步骤创建所需环境来缓解。
预备器210耦合到资源拣选器220。资源拣选器220取得可用机器将其移至需要资源的预定义地点。预备器210还耦合到拓扑构建器230。拓扑构建器230使用一般客户机驱动的任务引擎来部署拓扑环境。NLB416被用来提供高可用性和高可靠性。
资源拣选器220还耦合到资源池420,该资源池提供以相同方式配置的一组静态机器。每一池都具有预备器210尝试始终保持的目标数量。例如,如果基本域的目标是100个机器且只存在99个,则预备器开始做出第100个。
预备器210根据定义从A到B的已定义路径的“转移”来移动机器。每一个转移都具有与其相关联的源和目的地“池”且每一个转移都具有“定义”。定义可通过使用DART API来创建拓扑构建器XML文件来被实现为“拓扑查找”。状态可使用作为“预备器回调”机制的扫描资源来更新,以允许该机制检测拓扑构建器230中的正从A移至B的机器。使用关于“优先级”和“珍贵资源”的参数来建立优选过程次序。优先级指的是要在线的最重要的池是什么,而珍贵资源指的是具有较低数量并因此可能被利用率较高的池耗尽的池。
例如,资源池420中的资源的优先级判定可配置有被设为“过程次序”的优先级,其中每一池都具有一过程次序且每一转移都具有一过程次序。各层和池以“逆次序”处理,这导致更具活性的搅动(churn)。基于“珍贵资源”方法的设置可包括域之前的处理工作组、
Figure BDA0000449695860000121
2008之前的
Figure BDA0000449695860000122
2003以及官方之前的Loc/沙箱。也可以使用阈值修改器。阈值修改器提供临时调整以补偿“异常”行为并具有期满时间以使得系统翻转回到正常。阈值修改器还可增大或减小最大和最小目标值。
在操作中,用户430、432分别使用TDS web客户机界面270来提交请求434、436。用户430、432可请求预构建450或自定义452环境。TDS web客户机界面270提供被结构化为提供管理用户界面以供用户430、432检出和检入拓扑的网页的客户机前端。在用户430请求预构建环境450的情况下,请求434由web服务460传递至预备器210。预备器210使用资源拣选器220来从资源池420中检出所请求的资源。拓扑构建器230开始构建替换资源,如上所述。资源拣选器220所获取的资源然后被提供给用户430。
在用户432请求自定义环境452的情况下,请求436由web服务460传递至预备器210。预备器210将一作业注入拓扑构建器230以提供所需分组。预备器210还自动检查并监视所需分组,跟踪所有资源的当前状态,将资源拣选器220视作系统的当前库存,并使用将需要什么的池配置和资源拣选器220将什么指示为当前可用来基于接下来要创建什么作出决策。资源拣选器220提供资源并指示拓扑构建器230部署用于创作所请求的资源的适当模板。更具体而言,预备器210创建将使拓扑构建器230能够将资源变换成所需状态的工单拓扑构建器230。预备器210向资源拣选器220查询要变换的资源并且然后指示拓扑构建器230根据所提供的工单中的步骤来变换该资源。OML(孤立机器定位器)工具240、OCR(孤立客户机恢复)工具250和ALIS(所有实验室集成服务)系统260确保被提供给用户432的资源的状态是正确的。
图5是根据一实施例的TDS栈500的图示。在图5中,TDS栈500包括五个已部署的拓扑环境。第一环境510包括两个web服务器512、514。每一个web服务器512、514都包括应用池516、NLB服务器518、拓扑构建器服务器服务230和资源管理器服务522。还可提供测试资源524以使得能够测试web服务器512、514。另外,提供用于分布式文件系统(DFS)复制530的拓扑。DFS复制服务器被包括在每一个文件服务器532、534上。对于每一个文件服务器532、534,提供域536、538以及XML存储540、虚拟机(VM)设置542和拓扑注入器服务(TopoInjector)544。
在TDS栈500中提供两个应用服务器550、552。每一个应用服务器550、552都包括预备器服务210、ALIS服务260和拓扑注入器服务(TopoInjector服务)558。两个SQL
Figure BDA0000449695860000131
562包括资源拣选器数据库564、预备器数据库566、拓扑注入器(TopoInjector)数据库568和ALIS数据库570。SQL
Figure BDA0000449695860000132
582只包括拓扑注入器(TopoInjector)数据库584。
图6示出了根据一实施例的TDS web客户机前端600。TDS web客户机前端600被结构化为提供由终端用户检出拓扑的能力的网页。在图6中,示出了网页对话框屏幕620。在网页对话框屏幕620中示出了匹配用户所选的一组过滤器的拓扑610的列表。用户能够通过选择拓扑610之一来查看与每一个拓扑相关联的附加信息。在网页对话框屏幕620中,基于用户所检出的拓扑来示出不同配额630、640、650。
图7是根据一实施例的用于通过提供预构建环境的即时可用性来部署用于测试的环境的方法的流程图700。在图7中,自动执行对不同拓扑分组的检查和监视710。提供不同拓扑分组的库714。提供用于表示库中的不同拓扑分组的共同语言和开发机制718。向用户呈现用于接收用户提供的环境定义的界面722。自动向用户提供来自不同拓扑分组的库的元素以便根据用户提供的环境定义来创建测试环境726。标识从不同拓扑分组的库中丢失的环境730。访问模板汇编器以获取用于构建与从不同拓扑分组的库中丢失的所标识的环境相对应的新环境的模板734。使用由从模板汇编器获取的模板所提供的指令来构建新环境738。执行以下验证:当构建新环境成功时所需数量的拓扑再次可用742。
启动用于在过程失败时修复正在构建的新环境的工具746。确定是否标识出丢失或孤立的资源750。如果是752,则将所标识的丢失或孤立的资源转交给用于自动恢复所标识的丢失或孤立的资源的预定恢复子系统760。如果在判定操作750处未标识出丢失或孤立的资源754,或者在760处所标识的丢失或孤立的资源被转交给预定恢复子系统后,确定是否存在任何发生故障的虚拟机770。如果是772,则捕捉所检出的虚拟机的配置的快照780。然后,使用捕捉到的快照来回复发生故障的虚拟机784。如果在770确定不存在发生故障的虚拟机774或者在784回复发生故障的虚拟机后,方法700结束。
图8示出了根据一实施例的计算环境800。为了为不同实施例的各个方面提供附加上下文,图8和下列讨论旨在提供对其中可实现各实施例的各方面的合适的计算环境800的简要概括的描述。尽管前面已经在运行在一个或多个计算机上的计算机程序的计算机可执行指令的一般上下文中描述了各实施例,然而本领域内的技术人员将认识到,各实施例也可以和其他程序模块结合实现。一般地,程序模块包括执行特定任务和/或实现特定抽象数据类型的例程、程序、组件、数据结构等。
而且,本领域的技术人员可以理解,本发明的方法可用其他计算机系统配置实现,包括单处理器或多处理器计算机系统、小型计算设备、大型计算机、以及个人计算机、手持式计算设备、基于微处理器或可编程消费者或工业电子设备等。
各实施例的所示方面也可以在其中任务由通过通信网络链接的远程处理设备执行的分布式计算环境中实践。然而,即使不是各实施例的全部方面,至少也是各实施例的部分方面可以在独立计算机上实现。在分布式计算环境中,程序模块可位于本地和远程存储器存储设备两者中。
参考图8,用于实现一实施例的各方面的系统包括计算机820,包括处理单元821、系统存储器822以及将包括该系统存储器在内的各种系统组件耦合到处理单元821的系统总线823。处理单元821可以是可购得的各种处理器中的任一种。可以理解,双微处理器和其它多处理器架构也可被用作处理单元821。
系统总线可以是几种类型的总线结构中的任何一种,包括存储器总线或存储器控制器、外围总线、以及使用各种可购得的总线架构中的任一种的局部总线。系统存储器可包括只读存储器(ROM)824和随机存取存储器(RAM)825。基本输入/输出系统(BIOS)被存储在ROM824中,BIOS包含诸如在启动期间帮助在计算机820内的元件之间传输信息的基本例程。
计算机820还包括计算机可读数据存储介质,诸如硬盘驱动器827、例如用于对可移动盘829进行读写的磁盘驱动器828以及例如用于对CD-ROM盘831进行读写或对其它光学介质进行读写的光盘驱动器(CD-ROM驱动器)830。硬盘驱动器827、磁盘驱动器828,以及光盘驱动器830分别通过硬盘驱动器接口832、磁盘驱动器接口833,以及光盘驱动器接口834连接到系统总线823。驱动器及其相关联的计算机可读数据介质为计算机820提供数据、数据结构、计算机可执行指令等的非易失性存储。虽然以上对计算机可读数据存储介质的描述指的是硬盘、可移动磁盘和CD,但是本领域技术人员将会理解,在示例性操作环境中还可以使用可由计算机读取的其它类型的介质,DVD、诸如磁带盒、闪存卡、数字视频盘、贝努利盒式磁带等,并且还会理解任何这种介质可以包含用于执行本文描述的各实施例的方法的计算机可执行指令。
多个程序模块可储存在驱动器和RAM825中,包括操作系统835、一个或多个应用程序836、其它程序模块837和程序数据838。注意,所示计算机中的操作系统835可以是基本上任何合适的操作系统。
用户可通过键盘840和诸如鼠标840等定点设备向个人计算机820输入命令和信息。其它输入设备(未示出)可以包括话筒、操纵杆、游戏手柄、圆盘式卫星天线、扫描仪等。这些和其它输入设备通常通过耦合到系统总线的第二接口846连接到处理单元821,但可通过其它接口连接,如并行端口、游戏端口、无线端口或通用串行总线(USB)。监视器847或其他类型的显示设备也可以通过诸如视频适配器848之类的接口来连接到系统总线823。除了监视器之外,计算机还可包括其他外围输出设备(未示出),如扬声器和打印机。
计算机820可使用到一个或多个远程计算机(诸如,远程计算机849)的逻辑连接而在联网环境中操作。远程计算机849可以是工作站、服务器计算机、路由器、对等设备或其它常见网络节点,且通常包括上文相对于个人计算机820描述的许多或所有元件,但在图8中只示出存储器存储设备850。图8所描绘的逻辑连接可包括局域网(LAN)851和广域网(WAN)852。此类联网环境在办公室、企业范围的计算机网络、内联网和因特网中是常见的。
当在LAN网络环境中使用时,计算机820通过网络接口或适配器853连接至LAN851。当在WAN联网环境中使用时,计算机820可包括调制解调器854和/或连接到WAN852上的通信服务器和/或具有用于通过诸如因特网等广域网建立通信的其他装置。可以是内置或外置的调制解调器854可经由第二接口846连接到系统总线823。在联网环境中,相关于计算机820所示的程序模块或其部分可被存储在远程存储器存储设备中。应当理解,所示的网络连接是示例性的,并且可使用在计算机之间建立通信链路的其他手段。
以上对各示例性实施例的描述是出于说明和描述的目的而提出的。这并不是要穷举本发明或将各实施例限于所公开的精确形式。鉴于上述教导,许多修改和变型都是可能的。各实施例的范围并不旨在由该具体实施方式摂来限定,而是由所附权利要求书来限定。

Claims (10)

1.一种用于部署用于测试的环境的方法,包括:
提供不同拓扑分组的库;
向用户呈现用于接收环境定义的界面;以及
自动向用户提供来自所述不同拓扑分组的库的元素以便根据接收到的环境定义来创建测试环境。
2.如权利要求1所述的方法,其特征在于,所述提供所述不同拓扑分组的库包括提供以下各项的即时可用性:可用于创建拓扑的拓扑构件的预定库存、预构建的拓扑环境的预定库存以及用于使用所述拓扑构件的预定库存来预构建资源的服务套件,以及提供用于表示所述库中的不同拓扑分组的共同语言和开发机制。
3.如权利要求1所述的方法,其特征在于,所述提供所述不同拓扑分组的库还包括自动构建、检查和监视所述不同拓扑分组并且在自动向用户提供来自所述不同拓扑分组的库的元素后执行对所述不同拓扑分组的库的更新,所述更新通过以下操作来完成:标识从所述不同拓扑分组的库中丢失的环境、使用用于构建与从所述不同拓扑分组的库中丢失的所标识的环境相对应的新环境的模板、使用所述模板提供的指令来构建所述新环境、验证当所述构建所述新环境成功时所需数量的拓扑再次可用以及启动用于通过处理丢失或孤立的资源来在该过程失败时修复正在构建的新环境的工具。
4.如权利要求1所述的方法,其特征在于,所述向用户呈现界面还包括提供客户机网页前端,所述客户机网页前端用于提供管理用户界面以供用户将拓扑检入所述不同拓扑分组的库以及从所述库中检出拓扑。
5.一种用于部署用于测试的环境的系统,包括:
资源拣选器,所述资源拣选器用于提供不同拓扑分组的库并被配置成管理资源并实现所述资源的检入和检出;
预备器,所述预备器用于提供用于使用资源来为所述不同拓扑分组的库创建拓扑构件的服务套件;以及
客户机网页界面,所述客户机网页界面用于使用户能够提供用于从所述不同拓扑分组的库中创建所需拓扑的环境定义;
其中当通过所述客户机网页界面接收到所述环境定义时,所述预备器自动向用户提供来自所述不同拓扑分组的库的元素以便根据接收到的环境定义来创建测试环境。
6.如权利要求5所述的系统,其特征在于,所述预备器通过以下操作来在自动向用户提供来自所述不同拓扑分组的库的元素后执行对所述不同拓扑分组的库的更新:将所需环境的池配置与所述资源拣选器指示为当前可用的环境进行比较、基于所述比较来获取用于构建新环境的模板、使用所获取的模板提供的指令来构建所述新环境、验证当所述构建所述新环境成功时所需数量的拓扑再次可用以及启动用于在该过程失败时修复正在构建的新环境的工具。
7.如权利要求6所述的系统,其特征在于,所述预备器启动的工具包括:
OML(孤立机器定位器)工具,所述OML工具用于标识丢失或孤立的部署资源以及用于将丢失或孤立的部署资源转交给适当的子系统以便自动恢复;
OCR(孤立客户机恢复)工具,所述OCR工具用于管理孤立物理资源的恢复、用于对处于未知或丢失状态的物理资源进行重新映像、用于将所述物理资源重新添加到所述库、以及用于向经注册的web服务发送远程硬动力循环所述物理机器的SOAP请求;以及
ALIS(所有实验室集成服务)系统,所述ALIS系统捕捉虚拟机的配置的快照并将所述虚拟机回复到捕捉到的快照。
8.如权利要求5所述的系统,其特征在于,还包括模板机构设备,所述模板机构设备用于提供将配置表示为可重用构件的共同语言和开发平台,其中所述模板机构设备还包括模板汇编器、词典/意图文件、任务链和拓扑核查,其中所述任务链包括在拓扑片段中被绑定在一起的逻辑任务组,所述意图文件参考任务链和其它变量来定义拓扑,所述模板汇编器和拓扑核查提供检查以通过确认汇编的拓扑环境来确保所得拓扑的准确性。
9.如权利要求6所述的系统,其特征在于,还包括被配置成构建拓扑的拓扑构建器,其中所述预备器向所述资源拣选器查询要变换的机器并为所述拓扑构建器创建指示所述拓扑构建器将资源变换成所需状态的工单,其中所述拓扑构建器根据所述工单中的步骤来变换所述机器,所述预备器监视所述资源拣选器和所述拓扑构建器以寻找预定症状并启动所述OML工具和所述OCR工具,其中所述OML工具检测到所述症状并取回所述机器以便重新供应,而所述OCR工具使用资源拣选器和拓扑构建器来清除所述机器的记录。
10.一种其中存储有表示指令的数据的计算机可读存储设备,所述指令可由计算机执行以实现一种用于部署用于测试的环境的方法,包括:
提供不同拓扑分组的库;
向用户呈现用于接收环境定义的界面;以及
自动向用户提供来自所示不同拓扑分组的库的元素以便根据接收到的环境定义来创建测试环境。
CN201280032576.5A 2011-06-28 2012-06-22 通过提供预构建环境的即时可用性来部署用于测试的环境 Active CN103635885B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/171,387 US8732665B2 (en) 2011-06-28 2011-06-28 Deploying environments for testing by providing instantaneous availability of prebuilt environments
US13/171,387 2011-06-28
PCT/US2012/043899 WO2013003244A2 (en) 2011-06-28 2012-06-22 Deploying environments for testing by providing instantaneous availability of prebuilt environments

Publications (2)

Publication Number Publication Date
CN103635885A true CN103635885A (zh) 2014-03-12
CN103635885B CN103635885B (zh) 2016-06-22

Family

ID=47392057

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201280032576.5A Active CN103635885B (zh) 2011-06-28 2012-06-22 通过提供预构建环境的即时可用性来部署用于测试的环境

Country Status (8)

Country Link
US (1) US8732665B2 (zh)
EP (1) EP2726988A4 (zh)
JP (1) JP5941542B2 (zh)
KR (1) KR102018926B1 (zh)
CN (1) CN103635885B (zh)
AR (1) AR086795A1 (zh)
TW (1) TWI548987B (zh)
WO (1) WO2013003244A2 (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105518650A (zh) * 2013-09-04 2016-04-20 慧与发展有限责任合伙企业 选择用于构件块的多租用供应的资源提供器
CN106959925A (zh) * 2017-04-25 2017-07-18 北京云测信息技术有限公司 一种版本测试方法及装置
CN107357722A (zh) * 2017-06-22 2017-11-17 微梦创科网络科技(中国)有限公司 一种基于大量测试用户的社交网络服务sns测试系统及方法
CN112256326A (zh) * 2020-10-27 2021-01-22 北京字跳网络技术有限公司 信息的处理方法、装置、设备及存储介质

Families Citing this family (132)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8769048B2 (en) 2008-06-18 2014-07-01 Commvault Systems, Inc. Data protection scheduling, such as providing a flexible backup window in a data protection system
US8352954B2 (en) 2008-06-19 2013-01-08 Commvault Systems, Inc. Data storage resource allocation by employing dynamic methods and blacklisting resource request pools
US9128883B2 (en) 2008-06-19 2015-09-08 Commvault Systems, Inc Data storage resource allocation by performing abbreviated resource checks based on relative chances of failure of the data storage resources to determine whether data storage requests would fail
US8725688B2 (en) 2008-09-05 2014-05-13 Commvault Systems, Inc. Image level copy or restore, such as image level restore without knowledge of data object metadata
US8943476B2 (en) * 2011-06-14 2015-01-27 Google Inc. System and method to in-line script dependencies
US8700678B1 (en) * 2011-12-21 2014-04-15 Emc Corporation Data provenance in computing infrastructure
US8335851B1 (en) * 2012-03-12 2012-12-18 Ringcentral, Inc. Network resource deployment for cloud-based services
US9231830B2 (en) * 2012-05-25 2016-01-05 Sap Se Interconnected landscape graphical interface generator
US9130979B2 (en) * 2012-12-11 2015-09-08 Microsoft Technology Licensing, Llc Systems and methods for using virtual machines to sequence native applications into virtual packages and for reimaging virtual machines
US9633216B2 (en) 2012-12-27 2017-04-25 Commvault Systems, Inc. Application of information management policies based on operation with a geographic entity
US9292279B2 (en) * 2013-01-22 2016-03-22 Maluuba Inc. Method and system for creating and managing a dynamic route topography for service oriented software environments
US9459968B2 (en) 2013-03-11 2016-10-04 Commvault Systems, Inc. Single index to query multiple backup formats
US20140325275A1 (en) * 2013-04-30 2014-10-30 Hewlett-Packard Development Company, L.P. Using customer computing system to test other customer computing systems
US9141514B1 (en) * 2013-05-01 2015-09-22 Amdocs Software Systems Limited System, method, and computer program for automatically comparing a plurality of software testing environments
US10862731B1 (en) * 2013-06-27 2020-12-08 EMC IP Holding Company LLC Utilizing demonstration data based on dynamically determining feature availability
US9274824B2 (en) * 2013-06-27 2016-03-01 Verizon Patent And Licensing Inc. Network technology standard operating environment
EP3063668A4 (en) 2013-10-30 2017-05-31 Hewlett-Packard Enterprise Development LP Managing the lifecycle of a cloud service modeled as topology decorated by a number of policies
US10177988B2 (en) 2013-10-30 2019-01-08 Hewlett Packard Enterprise Development Lp Topology remediation
WO2015065389A1 (en) 2013-10-30 2015-05-07 Hewlett-Packard Development Company, L.P. Execution of a topology
WO2015065374A1 (en) 2013-10-30 2015-05-07 Hewlett-Packard Development Company, L.P. Management of the lifecycle of a cloud service modeled as a topology
WO2015065359A1 (en) 2013-10-30 2015-05-07 Hewlett-Packard Development Company, L.P. Modifying realized topologies
WO2015065368A1 (en) 2013-10-30 2015-05-07 Hewlett-Packard Development Company, L.P. Realized topology system management database
US10447538B2 (en) 2013-10-30 2019-10-15 Micro Focus Llc Facilitating autonomous computing within a cloud service
US10230568B2 (en) 2013-10-30 2019-03-12 Hewlett Packard Enterprise Development Lp Monitoring a cloud service modeled as a topology
WO2015065355A1 (en) 2013-10-30 2015-05-07 Hewlett-Packard Development Company, L. P. Stitching an application model to an infrastructure template
US20150193229A1 (en) * 2014-01-06 2015-07-09 Commvault Systems, Inc. Efficient propagation of software based on snapshot technologies enabling more efficient informal software builds
US9798596B2 (en) 2014-02-27 2017-10-24 Commvault Systems, Inc. Automatic alert escalation for an information management system
JP6264948B2 (ja) * 2014-03-04 2018-01-24 日本電気株式会社 情報処理装置、ハードウェア試験制御方法およびプログラム
US9648100B2 (en) 2014-03-05 2017-05-09 Commvault Systems, Inc. Cross-system storage management for transferring data across autonomous information management systems
US9740574B2 (en) 2014-05-09 2017-08-22 Commvault Systems, Inc. Load balancing across multiple data paths
US9250893B2 (en) * 2014-05-14 2016-02-02 Western Digital Technologies, Inc. Virtualized and automated software build system
US9612859B2 (en) 2014-07-21 2017-04-04 Vmware, Inc. Comparing states of a virtual machine
US20160019081A1 (en) * 2014-07-21 2016-01-21 Vmware,Inc. Viewing a snapshot of a virtual machine
US11635979B2 (en) * 2014-07-21 2023-04-25 Vmware, Inc. Modifying a state of a virtual machine
US11249858B2 (en) 2014-08-06 2022-02-15 Commvault Systems, Inc. Point-in-time backups of a production application made accessible over fibre channel and/or ISCSI as data sources to a remote application by representing the backups as pseudo-disks operating apart from the production application and its host
US9852026B2 (en) 2014-08-06 2017-12-26 Commvault Systems, Inc. Efficient application recovery in an information management system based on a pseudo-storage-device driver
US9444811B2 (en) 2014-10-21 2016-09-13 Commvault Systems, Inc. Using an enhanced data agent to restore backed up data across autonomous storage management systems
US9430750B2 (en) 2014-10-27 2016-08-30 International Business Machines Corporation Predictive approach to environment provisioning
US10429437B2 (en) * 2015-05-28 2019-10-01 Keysight Technologies, Inc. Automatically generated test diagram
US9766825B2 (en) 2015-07-22 2017-09-19 Commvault Systems, Inc. Browse and restore for block-level backups
JP6604218B2 (ja) * 2016-01-29 2019-11-13 富士通株式会社 試験装置、ネットワークシステム、及び試験方法
US10296368B2 (en) 2016-03-09 2019-05-21 Commvault Systems, Inc. Hypervisor-independent block-level live browse for access to backed up virtual machine (VM) data and hypervisor-free file-level recovery (block-level pseudo-mount)
CN107220171A (zh) * 2016-03-22 2017-09-29 阿里巴巴集团控股有限公司 一种虚拟机的测试方法及装置
US10878079B2 (en) 2016-05-11 2020-12-29 Oracle International Corporation Identity cloud service authorization model with dynamic roles and scopes
US9838376B1 (en) 2016-05-11 2017-12-05 Oracle International Corporation Microservices based multi-tenant identity and data security management cloud service
US9838377B1 (en) 2016-05-11 2017-12-05 Oracle International Corporation Task segregation in a multi-tenant identity and data security management cloud service
US10341410B2 (en) 2016-05-11 2019-07-02 Oracle International Corporation Security tokens for a multi-tenant identity and data security management cloud service
US10454940B2 (en) 2016-05-11 2019-10-22 Oracle International Corporation Identity cloud service authorization model
US9781122B1 (en) 2016-05-11 2017-10-03 Oracle International Corporation Multi-tenant identity and data security management cloud service
US10425386B2 (en) 2016-05-11 2019-09-24 Oracle International Corporation Policy enforcement point for a multi-tenant identity and data security management cloud service
US10581820B2 (en) 2016-05-11 2020-03-03 Oracle International Corporation Key generation and rollover
US10255061B2 (en) 2016-08-05 2019-04-09 Oracle International Corporation Zero down time upgrade for a multi-tenant identity and data security management cloud service
US10505941B2 (en) 2016-08-05 2019-12-10 Oracle International Corporation Virtual directory system for LDAP to SCIM proxy service
US10735394B2 (en) 2016-08-05 2020-08-04 Oracle International Corporation Caching framework for a multi-tenant identity and data security management cloud service
US10530578B2 (en) 2016-08-05 2020-01-07 Oracle International Corporation Key store service
US10585682B2 (en) 2016-08-05 2020-03-10 Oracle International Corporation Tenant self-service troubleshooting for a multi-tenant identity and data security management cloud service
US10516672B2 (en) 2016-08-05 2019-12-24 Oracle International Corporation Service discovery for a multi-tenant identity and data security management cloud service
US10263947B2 (en) 2016-08-05 2019-04-16 Oracle International Corporation LDAP to SCIM proxy service
CN106445809B (zh) * 2016-08-30 2019-04-05 北京华恒铭圣科技发展有限责任公司 一种获取网页加载首屏时延方法
US10484382B2 (en) 2016-08-31 2019-11-19 Oracle International Corporation Data management for a multi-tenant identity cloud service
US10846390B2 (en) 2016-09-14 2020-11-24 Oracle International Corporation Single sign-on functionality for a multi-tenant identity and data security management cloud service
US10511589B2 (en) 2016-09-14 2019-12-17 Oracle International Corporation Single logout functionality for a multi-tenant identity and data security management cloud service
US10594684B2 (en) 2016-09-14 2020-03-17 Oracle International Corporation Generating derived credentials for a multi-tenant identity cloud service
US10484243B2 (en) 2016-09-16 2019-11-19 Oracle International Corporation Application management for a multi-tenant identity cloud service
US10567364B2 (en) 2016-09-16 2020-02-18 Oracle International Corporation Preserving LDAP hierarchy in a SCIM directory using special marker groups
US10791087B2 (en) 2016-09-16 2020-09-29 Oracle International Corporation SCIM to LDAP mapping using subtype attributes
JP7018437B2 (ja) 2016-09-16 2022-02-10 オラクル・インターナショナル・コーポレイション マルチテナントアイデンティティおよびデータセキュリティ管理クラウドサービスのためのテナントおよびサービス管理
US10445395B2 (en) 2016-09-16 2019-10-15 Oracle International Corporation Cookie based state propagation for a multi-tenant identity cloud service
US10341354B2 (en) 2016-09-16 2019-07-02 Oracle International Corporation Distributed high availability agent architecture
US10904074B2 (en) 2016-09-17 2021-01-26 Oracle International Corporation Composite event handler for a multi-tenant identity cloud service
CN106874190B (zh) * 2016-12-30 2018-03-16 上海壹账通金融科技有限公司 用户界面的测试方法及服务器
US10838821B2 (en) 2017-02-08 2020-11-17 Commvault Systems, Inc. Migrating content and metadata from a backup system
US10740193B2 (en) 2017-02-27 2020-08-11 Commvault Systems, Inc. Hypervisor-independent reference copies of virtual machine payload data based on block-level pseudo-mount
US10261836B2 (en) 2017-03-21 2019-04-16 Oracle International Corporation Dynamic dispatching of workloads spanning heterogeneous services
US10891069B2 (en) 2017-03-27 2021-01-12 Commvault Systems, Inc. Creating local copies of data stored in online data repositories
US10776329B2 (en) 2017-03-28 2020-09-15 Commvault Systems, Inc. Migration of a database management system to cloud storage
US11074140B2 (en) 2017-03-29 2021-07-27 Commvault Systems, Inc. Live browsing of granular mailbox data
US10454915B2 (en) 2017-05-18 2019-10-22 Oracle International Corporation User authentication using kerberos with identity cloud service
US10664352B2 (en) 2017-06-14 2020-05-26 Commvault Systems, Inc. Live browsing of backed up data residing on cloned disks
US10348858B2 (en) 2017-09-15 2019-07-09 Oracle International Corporation Dynamic message queues for a microservice based cloud service
US11308132B2 (en) 2017-09-27 2022-04-19 Oracle International Corporation Reference attributes for related stored objects in a multi-tenant cloud service
US11271969B2 (en) 2017-09-28 2022-03-08 Oracle International Corporation Rest-based declarative policy management
US10834137B2 (en) 2017-09-28 2020-11-10 Oracle International Corporation Rest-based declarative policy management
US10705823B2 (en) 2017-09-29 2020-07-07 Oracle International Corporation Application templates and upgrade framework for a multi-tenant identity cloud service
KR102023424B1 (ko) * 2017-11-07 2019-09-23 엔에이치엔 주식회사 어플리케이션 사용환경 설정방법 및 이를 이용한 테스트방법
US10715564B2 (en) 2018-01-29 2020-07-14 Oracle International Corporation Dynamic client registration for an identity cloud service
US10795927B2 (en) 2018-02-05 2020-10-06 Commvault Systems, Inc. On-demand metadata extraction of clinical image data
US10789387B2 (en) 2018-03-13 2020-09-29 Commvault Systems, Inc. Graphical representation of an information management system
US10931656B2 (en) 2018-03-27 2021-02-23 Oracle International Corporation Cross-region trust for a multi-tenant identity cloud service
US20190303466A1 (en) * 2018-03-30 2019-10-03 Cerebro Data, Inc. Customized code configurations for a multiple application service environment
US10798165B2 (en) 2018-04-02 2020-10-06 Oracle International Corporation Tenant data comparison for a multi-tenant identity cloud service
US11165634B2 (en) 2018-04-02 2021-11-02 Oracle International Corporation Data replication conflict detection and resolution for a multi-tenant identity cloud service
US11258775B2 (en) 2018-04-04 2022-02-22 Oracle International Corporation Local write for a multi-tenant identity cloud service
US11012444B2 (en) 2018-06-25 2021-05-18 Oracle International Corporation Declarative third party identity provider integration for a multi-tenant identity cloud service
US10764273B2 (en) 2018-06-28 2020-09-01 Oracle International Corporation Session synchronization across multiple devices in an identity cloud service
US11693835B2 (en) 2018-10-17 2023-07-04 Oracle International Corporation Dynamic database schema allocation on tenant onboarding for a multi-tenant identity cloud service
US11321187B2 (en) 2018-10-19 2022-05-03 Oracle International Corporation Assured lazy rollback for a multi-tenant identity cloud service
CN109491892B (zh) * 2018-10-22 2021-11-19 四川虹美智能科技有限公司 一种项目环境的配置方法和装置
US10860443B2 (en) 2018-12-10 2020-12-08 Commvault Systems, Inc. Evaluation and reporting of recovery readiness in a data storage management system
US11651357B2 (en) 2019-02-01 2023-05-16 Oracle International Corporation Multifactor authentication without a user footprint
US11061929B2 (en) 2019-02-08 2021-07-13 Oracle International Corporation Replication of resource type and schema metadata for a multi-tenant identity cloud service
US11321343B2 (en) 2019-02-19 2022-05-03 Oracle International Corporation Tenant replication bootstrap for a multi-tenant identity cloud service
US11669321B2 (en) 2019-02-20 2023-06-06 Oracle International Corporation Automated database upgrade for a multi-tenant identity cloud service
US11423111B2 (en) 2019-02-25 2022-08-23 Oracle International Corporation Client API for rest based endpoints for a multi-tenant identify cloud service
US11792226B2 (en) 2019-02-25 2023-10-17 Oracle International Corporation Automatic api document generation from scim metadata
US10908892B2 (en) 2019-03-12 2021-02-02 International Business Machines Corporation Generating and deploying object code files compiled on build machines
US10977072B2 (en) * 2019-04-25 2021-04-13 At&T Intellectual Property I, L.P. Dedicated distribution of computing resources in virtualized environments
US11308034B2 (en) 2019-06-27 2022-04-19 Commvault Systems, Inc. Continuously run log backup with minimal configuration and resource usage from the source machine
US11870770B2 (en) 2019-09-13 2024-01-09 Oracle International Corporation Multi-tenant identity cloud service with on-premise authentication integration
US11687378B2 (en) 2019-09-13 2023-06-27 Oracle International Corporation Multi-tenant identity cloud service with on-premise authentication integration and bridge high availability
US11611548B2 (en) 2019-11-22 2023-03-21 Oracle International Corporation Bulk multifactor authentication enrollment
US11200155B2 (en) * 2020-04-09 2021-12-14 The Toronto-Dominion Bank System and method for automated application testing
US11262990B2 (en) * 2020-05-26 2022-03-01 International Business Machines Corporation Application topology discovery
US11604595B2 (en) 2020-12-09 2023-03-14 Dell Products L.P. Data mirroring and data migration between storage volumes using system control processors
US11853782B2 (en) 2020-12-09 2023-12-26 Dell Products L.P. Method and system for composing systems using resource sets
US11698821B2 (en) 2020-12-09 2023-07-11 Dell Products L.P. Composable information handling systems in an open network using access control managers
US11809911B2 (en) 2020-12-09 2023-11-07 Dell Products L.P. Resuming workload execution in composed information handling system
US11675665B2 (en) 2020-12-09 2023-06-13 Dell Products L.P. System and method for backup generation using composed systems
US11809912B2 (en) 2020-12-09 2023-11-07 Dell Products L.P. System and method for allocating resources to perform workloads
US11928515B2 (en) 2020-12-09 2024-03-12 Dell Products L.P. System and method for managing resource allocations in composed systems
US11704159B2 (en) 2020-12-09 2023-07-18 Dell Products L.P. System and method for unified infrastructure architecture
US11934875B2 (en) * 2020-12-09 2024-03-19 Dell Products L.P. Method and system for maintaining composed systems
US11675625B2 (en) 2020-12-09 2023-06-13 Dell Products L.P. Thin provisioning of resources using SCPS and a bidding system
US11693703B2 (en) 2020-12-09 2023-07-04 Dell Products L.P. Monitoring resource utilization via intercepting bare metal communications between resources
CN112636982A (zh) * 2020-12-28 2021-04-09 中孚安全技术有限公司 网络对抗环境配置方法及用于网络对抗的实验云平台系统
US11797341B2 (en) 2021-01-28 2023-10-24 Dell Products L.P. System and method for performing remediation action during operation analysis
US11675916B2 (en) 2021-01-28 2023-06-13 Dell Products L.P. Method and system for limiting data accessibility in composed systems
US11768612B2 (en) 2021-01-28 2023-09-26 Dell Products L.P. System and method for distributed deduplication in a composed system
US11687280B2 (en) 2021-01-28 2023-06-27 Dell Products L.P. Method and system for efficient servicing of storage access requests
US11947697B2 (en) 2021-07-22 2024-04-02 Dell Products L.P. Method and system to place resources in a known state to be used in a composed information handling system
US11928506B2 (en) 2021-07-28 2024-03-12 Dell Products L.P. Managing composition service entities with complex networks
CN115543806A (zh) * 2022-10-08 2022-12-30 武汉赫尔墨斯智能科技有限公司 一种支持自动调用自动匹配自动执行用例测试的方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6282678B1 (en) * 1999-01-08 2001-08-28 Cisco Technology, Inc. Generic test execution method and apparatus
US20070022324A1 (en) * 2005-07-20 2007-01-25 Chang Yee K Multi-platform test automation enhancement
US20070220392A1 (en) * 2006-03-06 2007-09-20 Bhaskar Bhaumik Method and apparatus for automatic generation of system test libraries
US20110029673A1 (en) * 2009-07-31 2011-02-03 Devendra Rajkumar Jaisinghani Extensible framework to support different deployment architectures

Family Cites Families (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6477572B1 (en) 1998-12-17 2002-11-05 International Business Machines Corporation Method for displaying a network topology for a task deployment service
US6662312B1 (en) * 2000-06-30 2003-12-09 Qwest Communications International Inc. Software-testing automation system
US20030037327A1 (en) * 2001-08-15 2003-02-20 International Business Machines Corporation Run-time rule-based topological installation suite
US7299451B2 (en) * 2002-01-24 2007-11-20 International Business Machines Corporation Remotely driven system for multi-product and multi-platform testing
US7340520B1 (en) * 2002-04-01 2008-03-04 Microsoft Corporation System and method to facilitate manageable and agile deployment of services in accordance with various topologies
US7366955B2 (en) * 2003-01-29 2008-04-29 Sun Microsystems, Inc. Automated test execution framework with central management
US8122106B2 (en) 2003-03-06 2012-02-21 Microsoft Corporation Integrating design, deployment, and management phases for systems
US7451183B2 (en) * 2003-03-21 2008-11-11 Hewlett-Packard Development Company, L.P. Assembly and method for balancing processors in a partitioned server
US7421621B1 (en) * 2003-09-19 2008-09-02 Matador Technologies Corp. Application integration testing
US7181360B1 (en) 2004-01-30 2007-02-20 Spirent Communications Methods and systems for generating test plans for communication devices
US7665085B2 (en) 2004-03-15 2010-02-16 Ramco Systems Limited Flexible deployment of software applications
US7478361B2 (en) * 2004-06-17 2009-01-13 International Business Machines Corporation Method and system for managing application deployment
US7366706B2 (en) * 2004-11-23 2008-04-29 International Business Machines Corporation Method and apparatus for solution-template based deployment and management of an integration solution
US8166458B2 (en) 2005-11-07 2012-04-24 Red Hat, Inc. Method and system for automated distributed software testing
US7412349B2 (en) * 2005-12-09 2008-08-12 Sap Ag Interface for series of tests
US7774446B2 (en) 2005-12-30 2010-08-10 Microsoft Corporation Discovering, defining, and implementing computer application topologies
US20080040455A1 (en) 2006-08-08 2008-02-14 Microsoft Corporation Model-based deployment and configuration of software in a distributed environment
US8621434B2 (en) * 2007-06-26 2013-12-31 Topcoder, Inc. System and method for distributed software testing
WO2009108943A2 (en) * 2008-02-29 2009-09-03 Doyenz Incorporated Automation for virtualized it environments
US8954551B2 (en) * 2008-03-17 2015-02-10 Microsoft Corporation Virtualization of groups of devices
US7886021B2 (en) * 2008-04-28 2011-02-08 Oracle America, Inc. System and method for programmatic management of distributed computing resources
US8424053B2 (en) * 2008-07-01 2013-04-16 International Business Machines Corporation Method of dynamically updating network security policy rules when new network resources are provisioned in a service landscape
US8291378B2 (en) * 2008-07-29 2012-10-16 International Business Machines Corporation Simplified deployment modeling
JP5401922B2 (ja) * 2008-11-04 2014-01-29 富士通株式会社 仮想システム制御プログラム、方法及び装置
US8352912B2 (en) * 2008-12-15 2013-01-08 International Business Machines Corporation Method and system for topology modeling
EP2521976B1 (en) * 2010-01-08 2018-04-18 Sauce Labs, Inc. Real time verification of web applications

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6282678B1 (en) * 1999-01-08 2001-08-28 Cisco Technology, Inc. Generic test execution method and apparatus
US20070022324A1 (en) * 2005-07-20 2007-01-25 Chang Yee K Multi-platform test automation enhancement
US20070220392A1 (en) * 2006-03-06 2007-09-20 Bhaskar Bhaumik Method and apparatus for automatic generation of system test libraries
US20110029673A1 (en) * 2009-07-31 2011-02-03 Devendra Rajkumar Jaisinghani Extensible framework to support different deployment architectures

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105518650A (zh) * 2013-09-04 2016-04-20 慧与发展有限责任合伙企业 选择用于构件块的多租用供应的资源提供器
CN106959925A (zh) * 2017-04-25 2017-07-18 北京云测信息技术有限公司 一种版本测试方法及装置
CN107357722A (zh) * 2017-06-22 2017-11-17 微梦创科网络科技(中国)有限公司 一种基于大量测试用户的社交网络服务sns测试系统及方法
CN107357722B (zh) * 2017-06-22 2020-03-31 微梦创科网络科技(中国)有限公司 一种基于大量测试用户的社交网络服务sns测试系统及方法
CN112256326A (zh) * 2020-10-27 2021-01-22 北京字跳网络技术有限公司 信息的处理方法、装置、设备及存储介质
CN112256326B (zh) * 2020-10-27 2023-07-07 北京字跳网络技术有限公司 信息的处理方法、装置、设备及存储介质

Also Published As

Publication number Publication date
KR20140035968A (ko) 2014-03-24
JP5941542B2 (ja) 2016-06-29
EP2726988A2 (en) 2014-05-07
AR086795A1 (es) 2014-01-22
TWI548987B (zh) 2016-09-11
WO2013003244A3 (en) 2013-04-11
TW201301027A (zh) 2013-01-01
KR102018926B1 (ko) 2019-09-05
WO2013003244A2 (en) 2013-01-03
JP2014518425A (ja) 2014-07-28
US8732665B2 (en) 2014-05-20
EP2726988A4 (en) 2015-01-21
CN103635885B (zh) 2016-06-22
US20130007710A1 (en) 2013-01-03

Similar Documents

Publication Publication Date Title
CN103635885A (zh) 通过提供预构建环境的即时可用性来部署用于测试的环境
US8763006B2 (en) Dynamic generation of processes in computing environments
US8990810B2 (en) Projecting an effect, using a pairing construct, of execution of a proposed action on a computing environment
US8751283B2 (en) Defining and using templates in configuring information technology environments
US7958393B2 (en) Conditional actions based on runtime conditions of a computer system environment
US8826077B2 (en) Defining a computer recovery process that matches the scope of outage including determining a root cause and performing escalated recovery operations
US9558459B2 (en) Dynamic selection of actions in an information technology environment
US8775591B2 (en) Real-time information technology environments
US8868441B2 (en) Non-disruptively changing a computing environment
US8326910B2 (en) Programmatic validation in an information technology environment
US8346931B2 (en) Conditional computer runtime control of an information technology environment based on pairing constructs
US20090171731A1 (en) Use of graphs in managing computing environments
US20090171703A1 (en) Use of multi-level state assessment in computer business environments
US20120036049A1 (en) System and method for software integration and factory deployment
US20090171730A1 (en) Non-disruptively changing scope of computer business applications based on detected changes in topology
JP5263696B2 (ja) ソフトウェア構成要素をバックアップするためのコンピュータ・システム、並びにその方法及びコンピュータ・プログラム
US20090172470A1 (en) Managing processing of a computing environment during failures of the environment
US20090172671A1 (en) Adaptive computer sequencing of actions
US20080040455A1 (en) Model-based deployment and configuration of software in a distributed environment
US20090171708A1 (en) Using templates in a computing environment
CN109522095A (zh) 云主机异常故障检测恢复系统、方法及云平台
CN108776643A (zh) 一种基于版本控制流程的目标代码合并控制方法及系统
CN112162761A (zh) 自动化部署项目至公有云容器化平台的方法、系统及设备
CN110727575B (zh) 一种信息处理方法、系统、装置、以及存储介质
Bolduc Lessons learned: Using a static analysis tool within a continuous integration system

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
ASS Succession or assignment of patent right

Owner name: MICROSOFT TECHNOLOGY LICENSING LLC

Free format text: FORMER OWNER: MICROSOFT CORP.

Effective date: 20150803

C41 Transfer of patent application or patent right or utility model
TA01 Transfer of patent application right

Effective date of registration: 20150803

Address after: Washington State

Applicant after: Micro soft technique license Co., Ltd

Address before: Washington State

Applicant before: Microsoft Corp.

C14 Grant of patent or utility model
GR01 Patent grant