Method and apparatus to semantically connect independent build and test processes

US9619373B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9619373-B2
Application numberUS-96762310-A
CountryUS
Kind codeB2
Filing dateDec 14, 2010
Priority dateDec 14, 2009
Publication dateApr 11, 2017
Grant dateApr 11, 2017

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

In order to provide an improved, less error prone method for testing codes of a software application the following steps are proposed: defining for each test case comprised of a predefined test suite a specific footprint according to its test property, wherein said test case footprint comprises references defining which code sections are tested by said test case, marking code sections of the software application to be tested, identifying a test case of the test suite using its footprint matching at least a part of the marked code of the software application, and applying the identified test case on the software application.

First claim

Opening claim text (preview).

What is claimed is: 1. An electronic data processing system comprising a hardware processor device for testing codes of a software application by using test cases, within a predefined test suite, and a functional component for performing, by the processor device, each of the steps of: assigning test cases to functions and code sections that are tested by the test cases in the software application by automatically matching changed code sections with those test cases which actually test the changed code sections; storing each of the test cases in a test case repository; calculating for each test case comprised from the predefined test suite, a value for each line of the code sections indicating how many times the line was executed by the test case, and a proportional value for each line of the code sections calculated with respect to the code line executions of the predefined test suite; specifying a cut-off value associated with the proportional values; defining for each test case comprised from the predefined test suite a test case footprint according to the proportional values and the cut-off value, wherein said test case footprint comprises references defining which code sections are tested by said test case, and wherein each line of the code sections with a proportional value above the cut-off value is counted in the test case footprint; removing at least one of the test cases, within the test suite, having an equal test case footprint; marking the code sections of the software application to be tested; tracking the changed code sections between a current program of the software application and a predecessor version of the software application and storing the changed code sections in a change log unit; automatically selecting the test cases, within the test suite, based on the test case footprint stored in the test case repository; generating a list of test cases, within the test suite, that serves as input for a test automation by matching a test-required code section and the code sections being available for testing; reading and evaluating those changed code sections stored in the change log unit and reading the test case repository for matching against those changed code sections all test cases, within the test suite, which are testing the change code sections of source code; testing only those code sections which have been changed in relation to a precedent test case run; identifying a test case of the test suite using its footprint matching at least a part of the marked code of the software application to be tested; and applying the identified test case on the software application; wherein an existing code coverage tool algorithm is used for tracking a coverage of a single test case for determining which code section a predetermined test case covers, and the method further comprises storing said determined covered code section as a test case footprint. 2. The system of claim 1 , wherein a change log unit is used for tracking code changes done during an iterative program development procedure, wherein a new code line is automatically extracted as a copy from the source code and automatically pasted into the change log unit, and wherein only test cases are used having footprints stored in said change log unit. 3. The system of claim 1 , wherein the test case repository is used for storing assignations of test cases to associated code sections. 4. The system of claim 1 , the functional component further capable of performing a step of using said test case footprints for determining redundant test cases. 5. A computer program product usable for testing codes of a software application by using test cases, within a predefined test suite, comprising: a non-transitory computer useable medium including a computer readable program, wherein the computer readable program includes a functional component that when executed on a computer causes the computer to perform the steps of: assigning test cases to functions and code sections that are tested by the test cases in the software application by automatically matching changed code sections with those test cases which actually test the changed code sections; storing each of the test cases in a test case repository; calculating for each test case comprised from the predefined test suite, a value for each line of the code sections indicating how many times the line was executed by the test case, and a proportional value for each line of the code sections calculated with respect to the code line executions of the predefined test suite; specifying a cut-off value associated with the proportional values; defining for each test case comprised from the predefined test suite a test case footprint according to the proportional values and the cut-off value, wherein said test case footprint comprises references defining which code sections are tested by said test case, and wherein each line of the code sections with a proportional value above the cut-off value is counted in the test case footprint; removing at least one of the test cases, within the test suite, having an equal test case footprint; marking the code sections of the software application to be tested; tracking the changed code sections between a current program of the software application and a predecessor version of the software application and storing the changed code sections in a change log unit; automatically selecting the test cases, within the test suite, based on the test case footprint stored in the test case repository; generating a list of test cases, within the test suite, that serves as input for a test automation by matching a test-required code section and the code sections being available for testing; reading and evaluating those changed code sections stored in the change log unit and reading the test case repository for matching against those changed code sections all test cases, within the test suite, which are testing the change code sections of source code; testing only those code sections which have been changed in relation to a precedent test case run; identifying a test case of the test suite using its footprint matching at least a part of the marked code of the software application to be tested; and applying the identified test case on the software application; wherein an existing code coverage tool algorithm is used for tracking a coverage of a single test case for determining which code section a predetermined test case covers, and the method further comprises storing said determined covered code section as a test case footprint. 6. The computer program product of claim 5 , wherein a change log unit is used for tracking code changes done during an iterative program development procedure, wherein a new code line is automatically extracted as a copy from the source code and automatically pasted into the change log unit, and wherein only test cases are used having footprints stored in said change log unit. 7. The computer program product of claim 5 , wherein the test case repository is used for storing assignations of test cases to associated code sections. 8. The computer program product of claim 5 , further configured to perform a step of using said test case footprints for determining redundant test cases.

Assignees

Inventors

Classifications

  • for test version control, e.g. updating test cases to a new software version · CPC title

  • for coverage analysis · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US9619373B2 cover?
In order to provide an improved, less error prone method for testing codes of a software application the following steps are proposed: defining for each test case comprised of a predefined test suite a specific footprint according to its test property, wherein said test case footprint comprises references defining which code sections are tested by said test case, marking code sections of the so…
Who is the assignee on this patent?
Alexander Stefan, Pietzsch René, Schaefer Sebastian, and 3 more
What technology area does this patent fall under?
Primary CPC classification G06F11/3676. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Apr 11 2017 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).