2025-11-20 IntegrationTest
Jump to navigation
Jump to search
This is detail of integationtest.
Events
Type paramiter
Normal case
object: {
forStageMatching: true,
properties: {
name:{
forStageMatching: true,
value:"Tom"
}
}
},
array: {
forStageMatching: true,
useIsEqual: true,
eventValue: [
{
"relTypeAndDirection": {
"relType": {
"serviceTag": "maxxCart2",
"relationshipTag": "hasCartOrder"
},
"relationshipDirection": "from"
},
"targetObjects": [
{
"objType": {
"serviceTag": "maxxCart2",
"objectType": "cartOrder"
}
}
]
}
]
},
number: {
forStageMatching: true,
value: 1111
},
string: {
forStageMatching: true,
value: "hi"
},
boolean: {
forStageMatching: true,
value: true
}
- forStageMatching
forStageMatching: true
- set true for check match value,It is not necessary to set every value
- use in test importent paramiter
- set true for check match value,It is not necessary to set every value
- testValueMatches
testValueMatches:false
- setting paramiter require on create but can not test random value eg: identifier or timeStamp or uuid
Empty
EmptyString:{
value:""
},
EmptyArray:{
forStageMatching: true,
useIsEqual: true,
eventValue: []
},
EmptyObject:{
forStageMatching: true,
value:{}
}
Error
can test noRetryError
"errorMessage": {
forStageMatching: true,
"value": "Not found schema of {serviceTag:TestGraphHandler, objectType:notFoundObjType}"
}
Can not test case random nubber or identifer is random. But request mush be send param use setting.
testValueMatches:false
or set
forStageMatching:false
Tests
RefreshSeedData
Seed data for test case, can generate seed data by use this setting. Process refresh seed data first step delete all seed data after that create all seed data.
[
{
"integrationTestTag": "Test_mackTestLogic_refreceSeedData_DeleteIdentifier",
"productionSafe": false,
"errorIfStageUnderfined": false,
"errorIfInvokeUnderfined": false,
"dynamoDBSeedDataTags": [
"seedDynamodb_abc_ver2"
],
"graphSeedDataTags": [
"seedData_testTag_GG"
],
"stages": [
//...
]
}
]
- dynamoDBSeedDataTags
- If set tag in this setting integrationtest is generate seed data. in storage resource dynammodb.
- graphSeedDataTags
- If set tag in this setting integrationtest is generate seed data. in storage resource graphHanler.
- This tag save file in floder seedData_config
GenerateSeedData
- Integrationtest must be delete identifier every time before test.
- Set 'generatedSeedData' in file tests.json case by case of stage eg: stages[0] create identifier is randomOnCreate will set 'generatedSeedData' and stages[1] create relationship is randomOnCreate(It is usually random, except in the case of relationship version) set generatedSeedData this stages[1].
- How to delete case identifier rendomOnCreate?: set in stage use setting generateSeedData "randomOnCreateIdentifier"
- 3 case
- 1.randomOnCreateIdentifier
- 2.notRandomOnIdentifier
- 3.relationships
randomOnCreateIdentifier
[
{
"integrationTestTag": "Test_MLocation_CreateHdrSqs__case_NodeVersionData_Jaya",
"productionSafe": false,
"errorIfStageUnderfined": false,
"errorIfInvokeUnderfined": false,
"dynamoDBSeedDataTags": [
"seedDynamodb_abc_ver2"
],
"graphSeedDataTags": [
"seedData_testTag_GG"
],
"stages": [
{
"initialStage": true,
"inputEventTag": "MLocation_CreateHdrSqs__case_NodeVersionData_Jaya",
"serviceTag": "MLocations",
"resourceType": "Lambda",
"resourceName": "CreateHdrSqs",
"snsServiceName": "MLocations",
"snsTopic": "Create_In",
"generatedSeedData": {
"randomOnCreateIdentifier": [
{
"objType": {
"serviceTag": "MLocations",
"objectType": "Member"
},
"identifierValue": "Jaya-member-001"
}
]
}
}
]
}
]
notRandomOnIdentifier
[
{
"integrationTestTag": "Test_MLocation_CreateHdrSqs__case_NodeVersionData_Jaya",
"productionSafe": false,
"errorIfStageUnderfined": false,
"errorIfInvokeUnderfined": false,
"dynamoDBSeedDataTags": [
"seedDynamodb_abc_ver2"
],
"graphSeedDataTags": [
"seedData_testTag_GG"
],
"stages": [
{
"initialStage": true,
"inputEventTag": "MLocation_CreateHdrSqs__case_NodeVersionData_Jaya",
"serviceTag": "MLocations",
"resourceType": "Lambda",
"resourceName": "CreateHdrSqs",
"snsServiceName": "MLocations",
"snsTopic": "Create_In",
"generatedSeedData": {
"notRandomOnIdentifier": [
{
"objType": {
"serviceTag": "gggg",
"objectType": "ssssss"
},
"identifiers": {
"topId": "123456"
}
}
]
}
}
]
}
]
relationships
[
{
"integrationTestTag": "Test_MLocation_CreateHdrSqs__case_NodeVersionData_Jaya",
"productionSafe": false,
"errorIfStageUnderfined": false,
"errorIfInvokeUnderfined": false,
"dynamoDBSeedDataTags": [
"seedDynamodb_abc_ver2"
],
"graphSeedDataTags": [
"seedData_testTag_GG"
],
"stages": [
{
"initialStage": true,
"inputEventTag": "MLocation_CreateHdrSqs__case_NodeVersionData_Jaya",
"serviceTag": "MLocations",
"resourceType": "Lambda",
"resourceName": "CreateHdrSqs",
"snsServiceName": "MLocations",
"snsTopic": "Create_In",
"generatedSeedData": {
"relationships": [
{
"relType": {
"serviceTag": "PaymentMethodGeneric",
"relationshipTag": "disabledPaymentMethodGenericPropertyValue"
},
"relId": "f4f73de7-647c-4b3b-8043-87cc002f361a"
}
]
}
}
]
}
]