Scenario coverage in test generation
First Claim
Patent Images
1. A method comprising:
- accessing, from computer memory, transaction data generated during monitoring of a plurality of transactions involving a plurality of software components in a system;
determining, from the transaction data using at least one data processing apparatus, a respective flow of each of the plurality of transactions, wherein the determined flows of the plurality of transactions comprise a plurality of transaction flows, each transaction flow in the plurality of transaction flows involves participation of a respective subset of the software components in the plurality of software components, and each transaction flow in the plurality of transaction flows comprises a respective plurality of transaction fragments;
determining, using at least one data processing apparatus, one or more overlapping flows between the determined flows, wherein determining an overlapping flow comprises identifying one or more common transaction fragments shared between two or more different transaction flows in the plurality of transaction flows;
detecting, using at least one data processing apparatus, a number of instances of a particular one of the one or more overlapping flows;
determining that the particular overlapping flow corresponds to a particular one of a plurality of use scenarios of the system based on the number of instances of the particular of overlapping flow; and
generating an artifact executable by a computer to simulate operation of a particular software component involved in the particular use scenario based on transaction data describing transactions involved the particular overlapping flow.
1 Assignment
0 Petitions
Accused Products
Abstract
Transaction data is generated during monitoring of a plurality of transactions in a system and a respective flow is determined, from the transaction data, for each of the plurality of transactions. Each of the determined flows involves participation of a respective subset of software components of the system. A plurality of sets of overlapping flows in the plurality of flows are determined and a particular one of the plurality of sets of overlapping flows is determined to correspond to a use scenario of the system. A measure of the degree to which a set of artifacts modeling the system corresponds to the use scenarios of the system is determined.
79 Citations
20 Claims
-
1. A method comprising:
-
accessing, from computer memory, transaction data generated during monitoring of a plurality of transactions involving a plurality of software components in a system; determining, from the transaction data using at least one data processing apparatus, a respective flow of each of the plurality of transactions, wherein the determined flows of the plurality of transactions comprise a plurality of transaction flows, each transaction flow in the plurality of transaction flows involves participation of a respective subset of the software components in the plurality of software components, and each transaction flow in the plurality of transaction flows comprises a respective plurality of transaction fragments; determining, using at least one data processing apparatus, one or more overlapping flows between the determined flows, wherein determining an overlapping flow comprises identifying one or more common transaction fragments shared between two or more different transaction flows in the plurality of transaction flows; detecting, using at least one data processing apparatus, a number of instances of a particular one of the one or more overlapping flows; determining that the particular overlapping flow corresponds to a particular one of a plurality of use scenarios of the system based on the number of instances of the particular of overlapping flow; and generating an artifact executable by a computer to simulate operation of a particular software component involved in the particular use scenario based on transaction data describing transactions involved the particular overlapping flow. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16)
-
-
17. A non-transitory computer readable medium having program instructions stored therein, wherein the program instructions are executable by a computer system to perform operations comprising:
-
accessing transaction data generated during monitoring of a plurality of transactions involving a plurality of software components in a system; determining, from the transaction data, a respective flow of each of the plurality of transactions, wherein the determined flows of the plurality of transactions comprise a plurality of transaction flows, each transaction flow in the plurality of transaction flows involves participation of a respective subset of the software components in the plurality of software components, and each transaction flow in the plurality of transaction flows comprises a respective plurality of transaction fragments; identifying one or more repeated flows between the determined flows, wherein determining a repeated flow comprises identifying one or more common transaction fragments shared between two or more different transaction flows in the plurality of transaction flows; detecting a number of instances of a particular one of the one or more repeated flows; determining that the particular repeated flow corresponds to a particular one of a plurality of use scenarios of the system based on the number of instances of the particular repeated flow; and generating an artifact executable by a computer to simulate operation of a particular software component involved in the particular use scenario based on transaction data describing transactions involved the particular repeated flow.
-
-
18. A system comprising:
-
a data processing apparatus; a memory device; a software transaction analysis engine executable by the data processing apparatus to; access transaction data generated during monitoring of a plurality of transactions involving a plurality of software components in a system; determine, from the transaction data, a respective flow of each of the plurality of transactions, wherein the determined flows of the plurality of transactions comprise a plurality of transaction flows, and each of the flows involves participation of a respective set of software components in the plurality of software components; determine that a subset of the flows comprise recurring instances of a particular transaction flow; detecting a frequency of the recurring instances of the particular transaction flow; determine that the particular transaction flow is one of a set of most frequently observed transaction flows in the system based on the frequency of the recurring instances; and generate a test case to simulate operation of a particular one of the plurality of software components involved in at least a portion of the particular transaction flow based on determining that the set of most frequently observed transaction flows in the system comprises the particular transaction flow. - View Dependent Claims (19, 20)
-
Specification