TESTING FRAMEWORK FOR POLICY-BASED WORKFLOWS
First Claim
1. A computer-implemented method comprising:
- receiving, by a processor of a system, a policy-based Extensible Markup Language (XML) workflow comprising multiple policy nodes and multiple condition nodes, the multiple policy nodes and multiple condition nodes accessible through a common input point in the policy-based XML workflow;
parsing, by the processor, the policy-based XML workflow to construct a policy control flow graph for the policy-based XML workflow;
identifying, through the processor, paths in the policy control flow graph;
determining, by the processor, path constraints for the paths in the policy control flow graph, the path constraints identifying one or more path conditions for traversing a respective path in the policy control flow graph;
generating, with the processor, a set of test inputs for the policy-based XML workflow using the path constraints, where the set of test inputs, when input into the policy-based XML workflow, cause the policy-based XML workflow to traverse the identified paths in the policy control flow graph; and
storing, by the processor, the generated set of test inputs in a memory of the system.
1 Assignment
0 Petitions
Accused Products
Abstract
A system comprehensively tests each feasible path in a policy-based Extensible Markup Language (XML) workflow. The system may receive an input workflow and parse workflow (or proxy code of the workflow) to construct a policy control flow graph. The system may identify paths in the policy control flow graph, such as each feasible path in the policy control flow graph. The system may determine path constraints for the identified paths, where the path constraints identify path conditions for traversing the identified path in the policy control flow graph. Then, the system may generate a set of test inputs for the workflow using the path constraints that, when input into the policy-based XML workflow, cause the workflow to traverse the identified paths.
14 Citations
20 Claims
-
1. A computer-implemented method comprising:
-
receiving, by a processor of a system, a policy-based Extensible Markup Language (XML) workflow comprising multiple policy nodes and multiple condition nodes, the multiple policy nodes and multiple condition nodes accessible through a common input point in the policy-based XML workflow; parsing, by the processor, the policy-based XML workflow to construct a policy control flow graph for the policy-based XML workflow; identifying, through the processor, paths in the policy control flow graph; determining, by the processor, path constraints for the paths in the policy control flow graph, the path constraints identifying one or more path conditions for traversing a respective path in the policy control flow graph; generating, with the processor, a set of test inputs for the policy-based XML workflow using the path constraints, where the set of test inputs, when input into the policy-based XML workflow, cause the policy-based XML workflow to traverse the identified paths in the policy control flow graph; and storing, by the processor, the generated set of test inputs in a memory of the system. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A system comprising:
-
a processor; and memory in communication with the processor, the memory having stored thereon; code parsing logic, that when executed by the processor, is configured to; receive a policy-based Extensible Markup Language (XML) workflow comprising multiple policy nodes and multiple condition nodes, the multiple policy nodes and multiple condition nodes accessible through a common input point in the policy-based XML workflow; and parse the policy-based XML workflow to construct a policy control flow graph for the policy-based XML workflow; and path enumeration logic, that when executed by the processor, is configured to; policy control flow graph; and constraint collection logic, that when executed by the processor, is configured to; determine path constraints for the paths in the policy control flow graph, the path constraints identifying one or more path conditions for traversing a respective path in the policy control flow graph; and constraint solving logic, that when executed by the processor, is configured to; generate a set of test inputs for the policy-based XML workflow using the path constraints, where the set of test inputs, when input into the policy-based XML workflow cause the policy-based XML workflow to traverse the identified paths in the policy control flow graph. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
-
15. A non-transitory computer readable medium comprising:
processor executable instructions, that when executed by a processor, cause a system to; receive a policy-based workflow comprising multiple policy nodes and multiple condition nodes, the multiple policy nodes and multiple condition nodes accessible through a common input point in the policy-based XML workflow; parse the policy-based workflow to construct a policy control flow graph for the policy-based workflow; identify paths in the policy control flow graph; filter the identified paths into a set of filtered paths; determine path constraints for the set of filtered paths, the path constraints identifying one or more path conditions for traversing a respective filtered path in the set of filtered paths; and generate a set of test inputs for the policy-based workflow using the path constraints, where the set of test inputs, when input into the policy-based XML workflow cause the policy-based workflow to traverse the set of filtered paths. - View Dependent Claims (16, 17, 18, 19, 20)
Specification