Patent ID: 9619373
Date: 2017-04-11
CPC Classifications: G06F

Claim:
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;