IP Library Patent Application 12981845
Patent Application
App. No. 12/981,845

Testing Software Code

Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US None
App. No.
12/981,845
Abstract

A computer-implemented method for testing software code includes the following steps performed by one or more processors: receiving a request to test at least a first portion of software code at a test framework, where the first portion of software code includes a dependency on a second portion of software code; marking the second portion of software code to indicate the dependency in the first portion of code; and replacing the second portion of software code with a third portion of software code during testing of the first portion of software code based on the marking of the second portion of software code.

Claims (88)

1 . A computer-implemented method for testing software code, the method comprising the following steps performed by one or more processors:

receiving a request to test at least a first portion of software code at a test framework, the first portion of software code comprising a dependency on a second portion of software code, the request defining a test case to be executed at the test framework;

marking the second portion of software code to indicate the dependency in the first portion of code; and

replacing the second portion of software code with a third portion of software code during testing of the first portion of software code based on the marking of the second portion of software code.

2 . The method of claim 1 , wherein marking the second portion of software code to indicate the dependency in the first portion of code comprises inserting one or more annotations in the first portion of software code.

3 . The method of claim 1 , wherein marking the second portion of software code to indicate the dependency in the first portion of code comprises processing a selection of the second portion of software code in a development environment.

4 . The method of claim 1 , wherein marking the second portion of software code to indicate the dependency in the first portion of code comprises processing at least one marker statement in the first portion of software code indicating the second portion of software code.

5 . The method of claim 4 , further comprising processing a second statement in the first portion of software code indicating an end of the second portion of software code.

6 . The method of claim 5 , wherein the second statement comprises an endseam statement.

7 . The method of claim 5 , wherein replacing the third portion of software code in place of the second portion of software code during testing of the first portion of software code comprises:

identifying the third portion of software code based on a third statement in the software code indicating a beginning of the third portion of software code;

executing the third portion of software code in place of the second portion of software code during testing of the first portion of software code; and

processing a fourth statement in the software code indicating an end of the third portion of software code.

8 . The method of claim 7 , wherein the third statement comprises at least one of:

an inject statement;

a call to an injection API;

an inject annotation; and

a portion of meta data defining an inject directive.

9 . The method of claim 1 , wherein the second portion of software code comprises at least one of:

a system field;

an authority check;

an object creation;

a static method call;

a file access;

a function call;

a database access;

a data object; and

a web service access.

10 . The method of claim 1 , wherein the first statement comprises a seam statement.

11 . The method of claim 1 , wherein the first portion of software code comprises production code.

12 . The method of claim 1 , wherein the third portion of software code comprises a first fragment of software code and a second fragment of software code, and the method further comprising:

replacing the second portion of software code with one or more of the first and second segments of software code during testing of the first portion of software code based on the test case.

13 . The method of claim 12 , wherein replacing the second portion of software code with one or more of the first and second segments of software code during testing of the first portion of software code based on the test case comprises:

determining one of the first segment or second segment of software code to replace the second portion of software code during testing of the first portion of software code based on the test case; and

replacing the second portion of software code with the determined one of the first or second segments of software code during testing of the first portion of software.

14 . The method of claim 1 , wherein the second portion of software code comprises a third fragment of software code and a fourth fragment of software code, and the method further comprising:

replacing one or more of the third and fourth fragments of software code with the third portion of software code during testing of the first portion of software code based on the test case.

15 . The method of claim 14 , wherein replacing one or more of the third and fourth fragments of software code with the third portion of software code during testing of the first portion of software code based on the test case comprises:

determining one of the third segment or fourth segment of software code to be replaced by the third portion of software code during testing of the first portion of software code based on the test case; and

replacing the determined one of the third or fourth fragments of software code with the third portion of software code during testing of the first portion of software code.

16 . The method of claim 14 , wherein marking the second portion of software code to indicate the dependency in the first portion of code further comprises specifying which of the third and fourth fragments of software code are to be replaced with the third portion of software code during testing of the first portion of software code.

17 . The method of claim 1 , further comprising triggering replacement of the second portion of software code with the third portion of software code during testing of the first portion of software code.

18 . A computer program product tangibly embodied on a non-transient computer readable medium for testing software code, the computer program product storing instructions operable when executed by a hardware processor to perform operations comprising:

receiving a request to test at least a first portion of software code at a test framework, the first portion of software code comprising a dependency on a second portion of software code, the request defining a test case to be executed at the test framework;

marking the second portion of software code to indicate the dependency in the first portion of code; and

replacing the second portion of software code with a third portion of software code during testing of the first portion of software code based on the marking of the second portion of software code.

19 . The computer program product of claim 18 , wherein the operation of marking the second portion of software code to indicate the dependency in the first portion of code comprises at least one of:

inserting one or more annotations in the first portion of software code to mark the second portion of software code;

processing a selection of the second portion of software code in a development environment; or

processing at least one marker statement in the first portion of software code indicating a third portion of software code.

20 . The computer program product of claim 18 , wherein the operation of replacing the third portion of software code in place of the second portion of software code during testing of the first portion of software code comprises:

identifying the third portion of software code based on a third statement in the software code indicating a beginning of the third portion of software code;

executing the third portion of software code in place of the second portion of software code during testing of the first portion of software code; and

processing at least one marker statement in the first portion of software code indicating the second portion of software code.

21 . The computer program product of claim 18 , wherein the third portion of software code comprises a first fragment of software code and a second fragment of software code, and the operations further comprise:

replacing the second portion of software code with one or more of the first and second segments of software code during testing of the first portion of software code based on the test case.

22 . The computer program product of claim 21 , wherein the operation of replacing the second portion of software code with one or more of the first and second segments of software code during testing of the first portion of software code based on the test case comprises:

determining one of the first segment or second segment of software code to replace the second portion of software code during testing of the first portion of software code based on the test case; and

replacing the second portion of software code with the determined one of the first or second segments of software code during testing of the first portion of software.

23 . The computer program product of claim 18 , wherein the second portion of software code comprises a third fragment of software code and a fourth fragment of software code, and the operations further comprise:

replacing one or more of the third and fourth fragments of software code with the third portion of software code during testing of the first portion of software code based on the test case.

24 . The computer program product of claim 23 , wherein the operation of replacing one or more of the third and fourth fragments of software code with the third portion of software code during testing of the first portion of software code based on the test case comprises:

determining one of the third segment or fourth segment of software code to be replaced by the third portion of software code during testing of the first portion of software code based on the test case; and

replacing the determined one of the third or fourth fragments of software code with the third portion of software code during testing of the first portion of software code.

25 . A system for testing software code, the system comprising:

a memory for storing instructions and one or more portions of software code; and

at least one hardware processor, the processor operable to execute the instructions to perform operations comprising:

receiving a request to test at least a first portion of software code at a test framework, the first portion of software code comprising a dependency on a second portion of software code, the request defining a test case to be executed at the test framework;

marking the second portion of software code to indicate the dependency in the first portion of code; and

replacing the second portion of software code with a third portion of software code during testing of the first portion of software code based on the marking of the second portion of software code.

26 . The system of claim 25 , wherein the operation of marking the second portion of software code to indicate the dependency in the first portion of code comprises at least one of:

inserting one or more annotations in the first portion of software code to mark the second portion of software code;

processing a selection of the second portion of software code in a development environment; or

processing at least one marker statement in the first portion of software code indicating the second portion of software code.

27 . The system of claim 25 , wherein the operation of replacing the third portion of software code in place of the second portion of software code during testing of the first portion of software code comprises:

identifying the third portion of software code based on a third statement in the software code indicating a beginning of the third portion of software code;

executing the third portion of software code in place of the second portion of software code during testing of the first portion of software code; and

processing a fourth statement in the software code indicating an end of the third portion of software code.

28 . The system of claim 25 , wherein the third portion of software code comprises a first fragment of software code and a second fragment of software code, and the operations further comprise:

replacing the second portion of software code with one or more of the first and second segments of software code during testing of the first portion of software code based on the test case.

29 . The system of claim 28 , wherein the operation of replacing the second portion of software code with one or more of the first and second segments of software code during testing of the first portion of software code based on the test case comprises:

determining one of the first segment or second segment of software code to replace the second portion of software code during testing of the first portion of software code based on the test case; and

replacing the second portion of software code with the determined one of the first or second segments of software code during testing of the first portion of software.

30 . The system of claim 25 , wherein the second portion of software code comprises a third fragment of software code and a fourth fragment of software code, and the operations further comprise:

replacing one or more of the third and fourth fragments of software code with the third portion of software code during testing of the first portion of software code based on the test case.

31 . The system of claim 30 , wherein the operation of replacing one or more of the third and fourth fragments of software code with the third portion of software code during testing of the first portion of software code based on the test case comprises:

determining one of the third segment or fourth segment of software code to be replaced by the third portion of software code during testing of the first portion of software code based on the test case; and

replacing the determined one of the third or fourth fragments of software code with the third portion of software code during testing of the first portion of software code.

Assignments (2)
CHANGE OF NAME Recorded Aug 26, 2014
From: SAP AG
To: SAP SE
Reel/Frame 033625/0223 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 21, 2011
From: GUTFLEISCH, MICHAEL; ZAVOZINA, EKATERINA; ZIEGLER, KLAUS
To: SAP AG
Reel/Frame 025674/0034 →