CN104067226A - 代码变化的持续部署 - Google Patents
代码变化的持续部署 Download PDFInfo
- Publication number
- CN104067226A CN104067226A CN201280068686.7A CN201280068686A CN104067226A CN 104067226 A CN104067226 A CN 104067226A CN 201280068686 A CN201280068686 A CN 201280068686A CN 104067226 A CN104067226 A CN 104067226A
- Authority
- CN
- China
- Prior art keywords
- code change
- test
- deployment
- streamline
- code
- 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
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
-
- 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)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Debugging And Monitoring (AREA)
- Stored Programmes (AREA)
Abstract
一种用于在软件应用中部署代码变化的处理器实现的方法。基于过滤规则将代码变化分配给部署流水线。在代码变化通过了与部署流水线关联的测试准则集合之后部署代码变化。
Description
背景技术
软件开发生命周期使用持续集成(CI)和持续部署(CD)来减少代码变化在生产线中花费的时间。持续集成对从特定源配置管理(SCM)工具接收代码变化、构造具有代码变化的可交付组件并测试所述组件的过程进行自动化。持续部署通过在具有代码变化的组件上执行应用编程接口、功能和/或性能测试来对将代码变化部署到环境中进行自动化。
附图说明
本公开的非限制性示例在参考所附的图阅读的下面的描述中加以描述,且不限制权利要求的范围。在附图中,出现在多于一个附图中的相同和类似的结构、元件及其部分通常在其出现的附图中标记有相同或类似的附图标记。附图中图示的部件和特征的尺寸主要是为了呈现的方便和清楚而选择的,且不必按比例绘制。参考附图:
图1图示根据示例的网络环境;
图2-3图示根据示例的用于在软件应用中自动部署代码变化的系统的框图;
图4图示根据示例的能够与系统一起使用的计算机可读介质的框图;
图5图示根据示例的部署流水线(pipeline)的示意图;以及
图6-7图示根据示例的用于在软件应用中自动部署代码变化的方法的流程图。
具体实施方式
在下面的详细描述中,对附图进行参考,附图形成该详细描述的一部分,并且在附图中通过本公开可在其中实践的特定示例的方式图示。应该理解的是,在不背离本公开的范围的情况下,可以利用其他示例并且可以做出结构或逻辑上的改变。因此,下面的详细描述不应在限制的意义上采用,并且本公开的范围由所附权利要求限定。
持续集成(CI)和持续部署(CD)对具有代码变化的代码组件的构造、测试和部署进行自动化。所述自动化在将代码变化被提交到源配置管理(SCM)工具之后开始。当代码变化被提交给SCM工具时,代码变化被开发者和/或发布管理者手动分配给特定的持续部署流水线(CD流水线或部署流水线)。由于代码变化是作为代码组件的一部分而被测试的,因此代码变化移动通过部署流水线。由部署流水线确定测试的量。例如,正常流水线可以被彻底地测试,但紧急或高优先级流水线可以仅包括少数测试以便更快地将代码投入生产。持续部署与给持续部署流水线的手动分配一起使用引入了风险,诸如如果在没有充分测试的情况下被部署的话可能危害系统的低质量和/或高影响变化的部署。
在示例中,本文中提供了用于在软件应用中自动过滤并部署代码变化的方法和系统。所述方法基于过滤规则将代码变化分配给部署流水线。在代码变化通过了与部署流水线关联的测试准则集合之后部署代码变化。
短语“代码变化”指的是任何软件应用的源代码的变化。短语代码变化还可以指的是作为代码组件的一部分的代码变化,该代码组件是作为持续集成过程的一部分而构造的。
短语“部署流水线”指的是在代码变化的序列上串行和/或并行执行的动作集合。例如,所述部署流水线可以包括构建代码、执行单元测试、部署代码、运行自动化测试、使代码分阶段(stage)、运行端到端测试和将软件部署到生产。代码变化队列可以包括与所定义的准则集合相匹配的代码变化,例如,该队列可以具有下述准则:如果代码变化具有低风险和高优先级,则将所述代码变化添加到特定部署流水线。
短语“过滤规则”指的是用于基于至少一个准则对代码变化进行分类(sort)的预定义规则。
短语“业务准则”指的是与过滤规则一起使用以将代码变化分配到部署流水线的业务因素。业务准则对应于与代码变化关联的数据,诸如代码变化的作者、代码变化中代码的行数、和/或变化的文件的数目。
短语“测试准则”指的是在部署之前需要代码变化通过的所定义的因素集合。
短语“测试集合”指的是使用代码变化来测试功能和/或识别代码变化的缺陷的在仿真环境中运行的测试。
图1图示根据示例的网络环境100。网络环境100包括将部署设备12、客户端设备14、测试设备16和数据存储器18相连接的链路10。部署设备12通常表示从至少一个客户端设备14接收代码变化的任何计算设备或计算设备的组合。
客户端设备14表示被配置成经由链路10与部署设备12进行交互的计算设备和/或计算设备的组合。所述交互可以包括代表用户来发送和/或传输数据,诸如代码变化。客户端设备14可以是例如具有包括使用户能够创建和/或编辑软件应用的代码的软件的个人计算设备。
测试设备16表示在部署流水线中的代码变化上运行测试集合的计算设备。测试设备16可以在仿真代码变化与软件应用的一起使用的测试环境下的应用中运行测试。测试集合可以存储在数据存储器18中。数据存储器18通常表示被配置成存储可由测试设备16在执行其功能时访问的数据的任何存储器。测试设备16功能可以经由链路10而完成,所述链路10将测试设备16连接到部署设备12和数据存储器18。
链路10通常表示电缆、无线、光纤、或者经由电信链路、红外链路、射频链路或者提供电子通信的任何其他连接器或系统的远程连接中的一个或多个。链路10可以至少部分地包括内联网、互联网或二者的组合。链路10还可以包括中间代理、路由器、交换机、负载平衡器等等。
图2图示根据示例的用于在软件应用中自动部署代码变化的系统100的框图。参考图2,系统200包括分配引擎22和部署引擎24。分配引擎22通常表示基于过滤规则将代码变化分配给部署流水线的硬件和/或编程的组合。部署引擎24通常表示在代码变化通过了与部署流水线关联的测试准则集合之后部署代码变化的硬件和/或编程的组合。部署引擎24维护一个和/或多个部署流水线。
图3图示根据另一示例的网络环境100中的系统200的框图。图3中图示的系统200包括部署设备12、测试设备16和数据存储器18。部署设备12被图示为包括分配引擎22和部署引擎24。部署设备12连接到对处于部署流水线中的代码变化进行测试的测试设备16。
部署设备12还包括过滤器引擎32。过滤器引擎32通常表示基于过滤规则对代码变化进行分类的硬件和/或编程的组合。例如,过滤器引擎32使用与代码变化关联的业务准则的预定义集合来对代码变化进行分类。
测试设备16包括测试引擎36。测试引擎36通常表示在测试环境下的应用中在代码变化上运行测试集合的硬件和/或编程的组合。测试设备16连接到数据存储器18。数据存储器18例如是存储测试集合38的数据库。分配引擎22、监视器引擎24和测试引擎36可以一起工作以对代码变化的部署进行自动化。
图4图示根据示例的能够与图2的系统200一起使用的计算机可读介质的框图。在图4中,部署设备12被图示成包括存储器41、处理器42和接口43。处理器42通常表示被配置成执行存储在存储器41中的程序指令以执行各种指定的功能的任何处理器。接口43通常表示使部署设备12能够经由链路10与客户端设备14和/或测试设备16进行通信的任何接口。
存储器41被图示成包括操作系统44和应用45。操作系统44表示在被处理器42执行时充当应用45可在其上运行的平台的一系列程序。操作系统43的示例包括各种版本的Microsoft的Windows®和Linux®。应用45表示在被处理器42执行时充当在软件应用中自动部署代码变化的应用的程序指令。例如,图4图示了分配模块46、部署模块47和过滤器模块48作为存储在部署设备12的存储器41中的可执行程序指令。
再次参考图2-3,分配引擎22、部署引擎24和过滤器引擎32被描述为硬件和/或编程的组合。如图4中所示,硬件部分可以包括处理器42。编程部分可以包括操作系统44、应用45和/或其组合。例如,分配模块46表示在被处理器42执行时引起图2-3的分配引擎22的实现的程序指令。部署模块47表示在被处理器42执行时引起图2-3的部署引擎24的实现的程序指令。过滤器模块48表示在被处理器42执行时引起图3的过滤器引擎32的实现的程序指令。
类似地,测试设备16被图示成包括存储器41、处理器42和接口43。处理器42通常表示用于执行存储在存储器41中的程序指令以执行各种指定的功能的任何处理器。接口43通常表示使测试设备16能够与部署设备12和/或客户端设备14进行通信的任何接口。接口43通常表示使测试设备16能够经由链路10与部署设备12进行通信的任何接口。
存储器41被图示成包括操作系统44和应用45。操作系统44表示在被处理器42执行时充当应用45可在其上运行的平台的一系列程序。操作系统的示例包括各种版本的Microsoft的Windows®和Linux®。应用45表示在被处理器42执行时使得使用如上文关于图2-3讨论的代码变化来运行测试集合38的程序指令。例如,图4图示了测试模块49作为存储在测试设备16的存储器41中的可执行程序指令。
再次参考图3,测试引擎36被描述为硬件和/或编程的组合。如图4中所示,硬件部分可以包括处理器42。编程部分可以包括操作系统44、应用45和/或其组合。例如,测试模块49表示在被处理器42执行时引起图3的测试引擎36的实现的程序指令。
分配模块46、部署模块47、过滤器模块48和测试模块49的编程可以是存储在存储器41上的处理器可执行指令,所述存储器41包括有形存储介质,并且,硬件可以包括用于执行所述指令的处理器42。存储器41可以存储在被处理器42执行时使处理器42执行程序指令的程序指令。存储器41可以集成到与处理器42相同的设备中,或者它可以是分离的但对该设备和处理器42来说可访问。
在一些示例中,程序指令可以是能够被处理器42执行以执行使用系统200的方法的安装包的一部分。存储器41可以是便携式介质(诸如CD、DVD或闪速驱动器)或者被可从中下载并安装安装包的服务器所维护的存储器。在一些示例中,程序指令可以是已经被安装在服务器上的一个或多个应用的一部分。在另外的示例中,存储器41可以包括诸如硬驱动器之类的集成存储器。
图5图示根据示例的部署流水线50的示意图500。过滤器引擎32从源配置管理(SCM)工具52接收代码变化51并从应用生命周期管理(ALM)工具54接收业务准则53。过滤器规则55使用业务准则53的预定集合以及来自代码变化51的关联数据以对代码变化51进行分类。分配引擎22将代码变化51分配给部署流水线50,诸如部署流水线50A、50B、50C。可替换地,过滤器规则55可以被称为针对每个流水线的进入准则。例如,部署流水线50A可以是由过滤器规则55确定为在没有彻底测试的情况下快速测试和部署的代码变化51的高优先级流水线50A。类似地,部署流水线50B可以是正常优先级流水线,并且部署流水线50C可以是低优先级流水线。正常优先级流水线50B针对的是由过滤器规则确定为在彻底测试的情况下以典型或例行的方式测试和部署的代码变化。低优先级流水线50C针对的是由过滤器规则55确定为彻底地但相比于高优先级流水线50A和正常优先级流水线50B中的代码变化51较不频繁地测试和部署的代码变化51。
在代码变化51被过滤器引擎32过滤之后,代码变化51保持在相应的部署流水线50中直到代码变化51通过测试准则58为止。例如,每当代码变化通过测试集合38时,都可以通过测试准则。通过测试准则或测试集合38可以在部署引擎24将代码变化51发送到测试引擎36以运行与测试流水线关联的测试集合38之后发生,如线57中所示。图5将测试集合38图示为测试38A-38B。例如,测试38A可以是应用程序接口(API)/功能测试;并且测试38B可以是性能测试,诸如在测试环境下的应用。在代码变化51被确定为通过测试集合38之后,部署引擎24确定何时代码变化51通过退出准则58并部署代码变化或发布代码变化51到软件应用59,退出准则58包括测试集合38和/或与部署流水线50关联的任何附加准则。
图6图示根据示例的用于在软件应用中自动部署代码变化的方法(诸如处理器实现的方法)的流程图600。在框62中,基于过滤规则将代码变化分配给部署流水线。使用例如与代码变化关联的业务准则的预定义集合来定义过滤规则。
在框64中,在代码变化通过了与部署流水线关联的测试准则集合之后部署代码变化。可以测试处于部署流水线中的代码变化以确定何时代码变化通过测试准则集合。例如,测试准则包括使用代码变化在测试环境下的应用中运行的测试集合以及基于该测试集合的结果对何时代码变化通过测试准则集合的确定。基于该测试集合的结果,使代码变化移动通过部署流水线。移动通过部署流水线可以通过取决于实施方式而在每个测试之间和/或在一系列测试的末尾处在部署引擎和测试引擎之间来回移动代码变化而发生。
图7图示根据另一示例的用于在软件应用中自动部署代码变化的方法(诸如处理器实现的方法)的流程图700。在框72中,根据过滤规则将代码变化分配给部署流水线。所述部署流水线可以包括多个部署流水线。所述过滤规则可以是使用与代码变化关联的业务准则的至少一个预定义集合来定义的。例如,过滤规则的应用包括使用与代码变化关联的数据来评估代码变化。
在框74中,测试部署流水线中的代码变化以确定何时代码变化通过与部署流水线关联的测试准则集合。框76在代码变化通过了测试准则集合之后部署代码变化。
图1-7有助于图示根据示例的架构、功能和操作。所述示例图示了各种物理和逻辑部件。所图示的各种部件至少部分地被定义为程序、编程或程序指令。每个这样的部件、其部分或其各种组合可以整体或部分地表示包括用于实现(一个或多个)任何指定的逻辑功能的一个或多个可执行指令的模块、段或代码部分。每个部件或其各种组合可以表示用于实现(一个或多个)指定的逻辑功能的电路或多个互连电路。
示例可以被实现在任何计算机可读介质中以供指令执行系统使用或结合指令执行系统使用,所述指令执行系统诸如是基于计算机/处理器的系统或ASIC(专用集成电路)或能够从计算机可读介质取得或获得逻辑并执行其中包含的指令的其他系统。“计算机可读介质”可以是能够获得、存储或维护程序和数据以供指令执行系统使用或结合指令执行系统使用的任何介质。计算机可读介质可以包括诸如例如电子、磁、光学、电磁或半导体介质之类的许多物理介质中的任一个。合适的计算机可读介质的更具体示例包括但不限于便携式磁计算机盘(诸如软盘或硬驱动器)、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器或便携式压缩盘。
尽管图6-7的流程图图示了特定执行次序,但是执行次序可以与所图示的执行次序不同。例如,可以相对于所示的次序打乱框的执行次序。此外,接续示出的框可以同时或部分同时执行。所有这样的变型处于本发明的范围内。
已经使用本公开的示例的非限制性详细描述对本公开进行了描述,并且本公开不旨在限制本公开的范围。应该理解的是,关于一个示例描述的特征和/或操作可以与其他示例一起使用,并且本公开的并非所有示例都具有在特定附图中图示或关于示例之一描述的所有特征和/或操作。所描述的示例的变型将是本领域技术人员可想到的。此外,术语“包括”、“包含”、“具有”及其词形变化当在本公开和/或权利要求中使用时应当意指“包括但不必限于”。
应该注意的是,上述示例中的一些可以包括可能对本公开来说非必要且旨在作为示例性的结构、动作或结构和动作的细节。如本领域中已知的,本文描述的结构和动作能够被执行相同功能的等同物替换,即使结构和动作不同。因此,本公开的范围仅由如权利要求中所使用的元素和限制限定。
Claims (15)
1.一种用于在软件应用中部署代码变化的处理器实现的方法,所述方法包括:
基于过滤规则将代码变化分配给部署流水线;以及
在代码变化通过与部署流水线关联的测试准则集合之后部署代码变化。
2.根据权利要求1所述的方法,进一步包括:使用与代码变化关联的业务准则的预定义集合来定义过滤规则。
3.根据权利要求1所述的方法,进一步包括:测试部署流水线中的代码变化以确定何时代码变化通过测试准则集合。
4.根据权利要求3所述的方法,其中测试代码变化进一步包括:
使用代码变化在测试环境下的应用中运行测试集合,以及
基于所述测试集合的结果来确定何时代码变化通过测试准则集合。
5.根据权利要求1所述的方法,进一步包括:基于所述测试集合的结果来使代码变化移动通过部署流水线。
6.一种其上存储有指令的计算机可读介质,所述指令在被处理器执行时使所述处理器执行用于在软件应用中部署代码变化的方法,所述方法包括:
根据过滤规则将代码变化分配给部署流水线;
测试部署流水线中的代码变化以确定何时代码变化通过与部署流水线关联的测试准则集合;以及
在代码变化通过测试准则集合之后部署代码变化。
7.根据权利要求6所述的计算机可读介质,进一步包括:使用与代码变化关联的数据来评估代码变化。
8.根据权利要求6所述的计算机可读介质,进一步包括:使用与代码变化关联的业务准则的至少一个预定义集合来定义过滤规则。
9.根据权利要求6所述的计算机可读介质,进一步包括:维护多个部署流水线。
10.一种用于在软件应用中部署代码变化的系统,所述系统包括:
分配引擎,用以基于过滤规则将代码变化分配给部署流水线;以及
部署引擎,用以在代码变化通过与部署流水线关联的测试准则集合之后部署代码变化。
11.根据权利要求10所述的系统,进一步包括:过滤器引擎,用以基于过滤规则来对代码变化进行分类。
12.根据权利要求11所述的系统,其中所述过滤器引擎使用与代码变化关联的业务准则的预定义集合来对代码变化进行分类。
13.根据权利要求10所述的系统,其中所述部署引擎维护多个部署流水线。
14.根据权利要求10所述的系统,进一步包括:测试设备,其包括用以在测试环境下的应用中在代码变化上运行测试集合的测试引擎。
15.根据权利要求13所述的系统,进一步包括用以存储测试集合的数据存储器。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/US2012/023252 WO2013115786A1 (en) | 2012-01-31 | 2012-01-31 | Continuous deployment of code changes |
Publications (1)
Publication Number | Publication Date |
---|---|
CN104067226A true CN104067226A (zh) | 2014-09-24 |
Family
ID=48905645
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201280068686.7A Pending CN104067226A (zh) | 2012-01-31 | 2012-01-31 | 代码变化的持续部署 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20150052501A1 (zh) |
EP (1) | EP2810159A4 (zh) |
CN (1) | CN104067226A (zh) |
WO (1) | WO2013115786A1 (zh) |
Families Citing this family (28)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2013165367A1 (en) * | 2012-04-30 | 2013-11-07 | Hewlett-Packard Development Company L.P. | Prioritization of continuous deployment pipeline tests |
US9632919B2 (en) * | 2013-09-30 | 2017-04-25 | Linkedin Corporation | Request change tracker |
WO2015084319A1 (en) * | 2013-12-03 | 2015-06-11 | Hewlett-Packard Development Company, L.P. | Code routine performance prediction using test results from code integration tool |
US9396100B2 (en) | 2014-12-05 | 2016-07-19 | International Business Machines Corporation | Software testing optimizer |
US10013333B2 (en) * | 2015-08-06 | 2018-07-03 | Paypal, Inc. | Scalable continuous integration and delivery systems and methods |
US9928039B2 (en) | 2015-12-03 | 2018-03-27 | International Business Machines Corporation | Stateful development control |
US10157044B2 (en) * | 2015-12-04 | 2018-12-18 | Vmware, Inc. | Automated application-release-management subsystem |
US9760366B2 (en) | 2015-12-21 | 2017-09-12 | Amazon Technologies, Inc. | Maintaining deployment pipelines for a production computing service using live pipeline templates |
US10193961B2 (en) | 2015-12-21 | 2019-01-29 | Amazon Technologies, Inc. | Building deployment pipelines for a production computing service using live pipeline templates |
US10334058B2 (en) | 2015-12-21 | 2019-06-25 | Amazon Technologies, Inc. | Matching and enforcing deployment pipeline configurations with live pipeline templates |
US9787779B2 (en) * | 2015-12-21 | 2017-10-10 | Amazon Technologies, Inc. | Analyzing deployment pipelines used to update production computing services using a live pipeline template process |
US11093374B2 (en) * | 2016-08-09 | 2021-08-17 | SeaLights Technologies LTD | System and method for continuous testing and delivery of software |
US10545847B2 (en) * | 2016-09-15 | 2020-01-28 | International Business Machines Corporation | Grouping and isolating software changes to increase build quality |
US10754641B2 (en) * | 2017-05-30 | 2020-08-25 | Red Hat, Inc. | Optimizing continuous integration (CI) using code review quality |
US20190129712A1 (en) * | 2017-10-27 | 2019-05-02 | Intuit Inc. | Methods, systems, and computer program products for an integrated platform for continuous deployment of software application delivery models |
US10656927B2 (en) | 2017-10-27 | 2020-05-19 | Intuit Inc. | Methods, systems, and computer program products for automating releases and deployment of a softawre application along the pipeline in continuous release and deployment of software application delivery models |
US10671368B2 (en) * | 2017-11-03 | 2020-06-02 | International Business Machines Corporation | Automatic creation of delivery pipelines |
CN108958721B (zh) * | 2018-07-09 | 2020-10-30 | 中国科学院软件研究所 | 一种智能化持续集成与持续部署流水线方法及系统 |
US11086759B2 (en) | 2018-09-27 | 2021-08-10 | SeaLights Technologies LTD | System and method for probe injection for code coverage |
US11340874B2 (en) * | 2019-06-27 | 2022-05-24 | Intel Corporation | Methods and apparatus to recommend instruction adaptations to improve compute performance |
US10956301B2 (en) * | 2019-07-03 | 2021-03-23 | Ownbackup Ltd. | Production data in continuous integration flows |
US11216303B1 (en) * | 2019-07-29 | 2022-01-04 | Intuit Inc. | Integrated task registration and execution system |
US11573780B2 (en) * | 2019-08-16 | 2023-02-07 | Red Hat, Inc. | Automated generation of status chains for software updates |
US11573885B1 (en) | 2019-09-26 | 2023-02-07 | SeaLights Technologies LTD | System and method for test selection according to test impact analytics |
US11467951B2 (en) * | 2019-11-06 | 2022-10-11 | Jpmorgan Chase Bank, N.A. | System and method for implementing mainframe continuous integration continuous development |
US11188451B2 (en) | 2020-03-08 | 2021-11-30 | Ownbackup Ltd. | Test data generation for automatic software testing |
US11841836B2 (en) | 2021-01-04 | 2023-12-12 | Ownbackup Ltd. | Target environment data seeding |
US11809859B2 (en) | 2021-03-25 | 2023-11-07 | Kyndryl, Inc. | Coordinated source code commits utilizing risk and error tolerance |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060080656A1 (en) * | 2004-10-12 | 2006-04-13 | Microsoft Corporation | Methods and instructions for patch management |
US20070250574A1 (en) * | 2005-06-24 | 2007-10-25 | Tseitlin Ariel D | Continuous deployment |
CN101996069A (zh) * | 2009-08-13 | 2011-03-30 | 上海杉达学院 | 用于软件测试的测试代码生成系统 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050044531A1 (en) * | 2003-06-09 | 2005-02-24 | Erc-Ip, Llc | Methods and systems for deploying computer source code |
US7926051B2 (en) * | 2003-11-10 | 2011-04-12 | International Business Machines Corporation | Automatic parallel non-dependent component deployment |
US8627287B2 (en) * | 2007-11-29 | 2014-01-07 | Microsoft Corporation | Prioritizing quality improvements to source code |
US20110083122A1 (en) * | 2009-10-05 | 2011-04-07 | Salesforce.Com, Inc. | Method and system for massive large scale test infrastructure |
US8479188B2 (en) * | 2010-07-08 | 2013-07-02 | Microsoft Corporation | Binary code change vulnerability prioritization |
US8782609B2 (en) * | 2011-09-23 | 2014-07-15 | Microsoft Corporation | Test failure bucketing |
US8677315B1 (en) * | 2011-09-26 | 2014-03-18 | Amazon Technologies, Inc. | Continuous deployment system for software development |
-
2012
- 2012-01-31 EP EP12867306.8A patent/EP2810159A4/en not_active Withdrawn
- 2012-01-31 CN CN201280068686.7A patent/CN104067226A/zh active Pending
- 2012-01-31 US US14/374,841 patent/US20150052501A1/en not_active Abandoned
- 2012-01-31 WO PCT/US2012/023252 patent/WO2013115786A1/en active Application Filing
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060080656A1 (en) * | 2004-10-12 | 2006-04-13 | Microsoft Corporation | Methods and instructions for patch management |
US20070250574A1 (en) * | 2005-06-24 | 2007-10-25 | Tseitlin Ariel D | Continuous deployment |
CN101996069A (zh) * | 2009-08-13 | 2011-03-30 | 上海杉达学院 | 用于软件测试的测试代码生成系统 |
Non-Patent Citations (1)
Title |
---|
JEZ HUMBLE等: "《Continuous delivery》", 1 August 2010, article "Chapter 5 Anatomy of the Deployment Pipeline", pages: 109-120 * |
Also Published As
Publication number | Publication date |
---|---|
US20150052501A1 (en) | 2015-02-19 |
EP2810159A1 (en) | 2014-12-10 |
EP2810159A4 (en) | 2015-09-09 |
WO2013115786A1 (en) | 2013-08-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104067226A (zh) | 代码变化的持续部署 | |
US9652509B2 (en) | Prioritization of continuous deployment pipeline tests | |
US9183123B2 (en) | Performance tests in a continuous deployment pipeline | |
US9703687B2 (en) | Monitor usable with continuous deployment | |
CN106156186B (zh) | 一种数据模型管理装置、服务器及数据处理方法 | |
US7895565B1 (en) | Integrated system and method for validating the functionality and performance of software applications | |
US20170010959A1 (en) | Predictive model scoring to optimize test case order in real time | |
CN104081359B (zh) | 失败代码变化的识别 | |
US20170060969A1 (en) | Automating extract, transform, and load job testing | |
CN109344056B (zh) | 一种测试方法以及测试装置 | |
CN102053912A (zh) | 一种基于uml图形对软件进行自动化测试的装置及方法 | |
CN108763091A (zh) | 用于回归测试的方法、装置及系统 | |
WO2009044971A1 (en) | Method and system for determining interface compatibility based on component model | |
CN111814951A (zh) | 调试深度神经网络 | |
WO2016161178A1 (en) | System and method for automated cross-application dependency mapping | |
CN114461534A (zh) | 软件性能测试方法、系统、电子设备及可读存储介质 | |
CN113792341A (zh) | 应用程序的隐私合规自动化检测方法、装置、设备及介质 | |
CN103500109B (zh) | 一种用于实现文件收集、软件包自动安装的方法及装置 | |
US8850407B2 (en) | Test script generation | |
JP2022136983A (ja) | システム試験手順を使用する統合試験手順の自動生成 | |
CN110990209A (zh) | 存储稳定性的测试方法、测试装置、测试设备及存储介质 | |
EP3091453A1 (en) | Designing a longevity test for a smart tv | |
CN110175112A (zh) | 基于过程管理提高版本测试效率的方法及设备 | |
EP4370981A1 (en) | Method and system for generating user specific engineering programs in a multi-user engineering environment | |
CN115016970A (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 | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20140924 |