All Classes and Interfaces
Class
Description
info about if the field is public
and if not, how to get/set value
Represent $all operation.
{ field: { $all: [ value1 , value2 ... ] } }
Represent $and operation.
{ $and: [ { expression1 }, { expression2 } , ... , { expressionN } ] }
array param
info for JDK:
BigInteger constructors and operations throw ArithmeticException when the result is
out of the supported range of -2^Integer.MAX_VALUE (exclusive) to +2^Integer.MAX_VALUE (exclusive).
boolean param
this is created for handling binary in thrift, see https://thrift.apache.org/docs/types
handle it as string
a type schema for java.nio.ByteBuffer
byte param
char param
a set of util for generating instance creation and assertion with java in tests
in order to make endpoint invocation
collection param
collection type which includes Array, List, Set
contains a set of method to customize info for testing
need to check with Andrea if putting them in this interface or moving them to SutController
a customized criteria to check if a field is required or (not nullable) with the following
three situations
- only [annotationType] is specified, then the field with such annotation
would be considered as `required`
- [annotationType], [annotationMethod] and [equalsTo] are specified, then
the field is considered as `required` only if the field is applied with the annotation
and the method of the annotation returns the same value as [equalsTo]
cycle object
handle date param with java.util.Date
type schema for date
double param
util class for handling dto
Represent $elemMatch operation.
{ field: { $elemMatch: { query1, query2, ... } } }
Main class used to implement an EvoMaster Driver.
Note: usually a RESTful webservice would be stateless.
endpoint dto for RPC service
enum parameter
enumeration
Represent $eq operation.
{ field: { $eq: value } }
Represent $exists operation.
{ field: { $exists: boolean } }
DSL (Domain Specific Language) for expectation management.
float param
Represent $gte operation.
{ field: { $gte: value } }
Represent $gt operation.
{ field: { $gt: value } }
Two possible implicit operations (no operator)
Equals: { field: value }
And: {{ expression1 }, { expression2 } , ... , { expressionN } }
Represent $in operation.
{ field: { $in: [value1, value2, ... valueN ] } }
Class responsible to handle the SutController in a way
in which bytecode instrumentation is activated.
schema dto of the RCP service
int param
Represent the operation that results from applying a $not to an $all operation.
Represent the operation that results from applying a $not to a $mod operation.
Represent the operation that results from applying a $not to a $size operation.
Represent the operation that results from applying a $not to a type operation.
supported specification of Java Dto
the specification would relate to how to construct dto
this class is to handle constraints defined with javax.validation.constraints
following the link
https://javaee.github.io/javaee-spec/javadocs/javax/validation/constraints/package-summary.html
Represent $jsonSchema operation.
Represent $lte operation.
{ field: { $lte: value } }
Represent $lt operation.
{ field: { $lt: value } }
thrift
ArrayList (see https://thrift.apache.org/docs/types#containers)
long param
thrift
HashMap (see https://thrift.apache.org/docs/types#containers)
map type
Represent $mod operation.
{ field: { $mod: [ divisor, remainder ] } }
DSL (Domain Specific Language) for operations on
the Mongo Database
Class used to act upon Mongo commands executed by the SUT
Class used to execute Mongo commands
Selectors for operations whose value consist of a list of conditions
a named instance of the type with its value, eg Param/Field
it could be a request param or a response
Represent $nearSphere operation.
{ field: { $nearSphere: [ x, y ], $maxDistance: value, $minDistance: value } }
or
{ field: { $nearSphere: {$geometry: {type: "Point", coordinates: [ longitude, latitude ]}, $maxDistance: value, $minDistance: value}}
Represent $nor operation.
{ $nor: [ { expression1 }, { expression2 },
Represent $ne operation.
{ field: { $ne: value } }
Represent $nin operation.
{ field: { $nin: [ value1, value2 ... valueN ] } }
Represent $not operation.
{ field: { $not: { operator-expression } } }
object param
object type
Helper class for working with OpenSearch queries.
Represent $or operation.
{ $or: [ { expression1 }, { expression2 }, ... , { expressionN } ] }
map entry which is only used for handling map
used AbstractMap.SimpleEntry for handling map
Primitive types Param
primitive types
Depending on which kind of SUT we are dealing with (eg, REST, GraphQL or SPA frontend),
there is different info that must be provided.
this is for handling bytes in gRPC with protobuf3 ByteString
handle it as string with utf8 now
copyFromUtf8
toStringUtf8
this class presents extracted info of a field of protobuf dto
Represents a MongoDB query operation.
Represents an OpenSearch query operation.
Determines to which operation a query correspond.
A selector is used to determine if a query correspond to a certain operation.
A selector is used to determine if a query correspond to a certain operation.
This class will link a given RedisCommand to the result of the distance calculation for that commmand.
Class used to execute Redis commands
This class will have the distance for a RedisCommand (between 0 and 1)
and the number of evaluated keys in that distance calculation.
DSL (Domain Specific Language) for insertions on
the Redis Database.
Class used to act upon Redis commands executed by the SUT
This class will contain all necessary information from Redis to perform the distance calculation for a given command.
Utils class for auxiliary operations in Redis heuristic value calculations.
This class will hold the data associated to the value for a given key in Redis.
RedisClient that uses Lettuce dynamically via reflection, avoiding
compile-time dependency on Spring or Lettuce.
Represent $regex operation.
Created by arcuri82 on 05-Nov-18.
created by manzhang on 2021/11/4
handle RPC exception, for instance
- extract possible category eg, application, protocol, if possible
- extract exception info, eg, customized exception, message, or status code
define RPCProblem used in driver
thrift
HashSet (see https://thrift.apache.org/docs/types#containers)
int param
Represent $size operation.
{ field: { $size: value } }
string param
string type
Abstract class used to connect to the EvoMaster process, and
that is responsible to start/stop/restart the tested application,
ie the system under test (SUT)
Base interface used to control the System Under Test (SUT)
from the generated tests.
Represent Term operation.
{ term: { field: value } }
Represent $text operation.
Represent $type operation.
type schema
{ field: { $type: BSON type } }
Represent $where operation.