How to integrate jewel to with your framework
To integrate Jewel reporting and to make use of the numerous services given by jewel, we require the “EnterPoint API,” which will provide all of the URLs needed to access Jewel features.
API:- https://apis.gemecosystem.com/gemEcosystemDashboard/v1/enter-point
This API requires jewel username and bridgeToken as the authorization.
(Prerequisite: Sign up on Jewel )
And as the response of this API, we will get different API URLs that can be further utilized.
Sample response:
{
“data”: {
“jewel-url”: “https://jewel.gemecosystem.com”,
“email-api”: “https://apis.gemecosystem.com/testExecution/v1/email”,
“test-exe-api”: “https://apis.gemecosystem.com/testExecution/v2/testcase”,
“bucket-file-upload-api”: “https://apis.gemecosystem.com/gemEcosystemS3/s3/v1/upload/file”,
“jira-api”: “https://apis.gemecosystem.com/gemEcosystemJira/v1/jira”,
“file-viewer”: “https://jewel.gemecosystem.com/#/file-viewer”,
“bucket-data-upload-api”: “https://apis.gemecosystem.com/gemEcosystemS3/s3/v1/upload/data”,
“suite-exe-api”: “https://apis.gemecosystem.com/testExecution/v2/suiteexe”,
“azure-api”: “https://apis.gemecosystem.com/gemEcosystemJira/v1/azure”,
“pre-signed”: “https://apis.gemecosystem.com/gemEcosystemS3/s3/v1/generatePreSigned”
},
“message”: “1 Record Found”,
“operation”: “Success”
}
Listed below are the use cases for individual URLs:
- jewel-url -> Its the URL of jewel application through which all features like creation of suites, automation testcases, manual testcases and their execution and reporting can be managed.
- email-API-> To send generated suite run report via email.
- suite-exe-api->Manage your suite i.e., create, read, update and delete.
- test-exe-api-> To insert and update the test cases in created suite.
- bucket-file-upload-api-> To upload files (jpeg, pdf, excel etc.) /screenshots over S3 bucket.
- jira-api-> To manage Jira ticket creation in case of failed testcases, comments and workflow transitions automatically according to the flow.
- file-viewer-> To download files and data from S3 bucket.
- bucket-data-upload-api-> To upload the data in text format.
- azure-api-> To manage Azure work item/tickets creation in case of failed testcases, comments and workflow transitions automatically according to the flow.
- pre-signed-> Alternate of bucket-file-upload-api, it can upload files/screenshots over S3 bucket. A URL is created via which you can upload the items.
How to integrate Jewel reporting
To avail reporting of jewel two APIs are required i.e. suite-exe-api and test-exe-api.
Steps for suite and testcase insertion. (PFB sample payload and response)
- Create a suite using POST suite-exe-api.
- Execute and insert all the testcases using POST test-exe-api.
- Get suite execution data GET suite-exe-api.
- Update and mark suite status accordingly using PUT suite-exe-api.
After the insertion we can provide user with the report link of if this execution by appending s_run-id and p_id after the fixed base report link i.e.
‘https://jewel.gemecosystem.com/#/autolytics/execution-report?’
Sample report link: – https://jewel.gemecosystem.com/#/autolytics/execution-report?s_run_id=DEMO_BETA_546d86990f-a754-8af0f23d&p_id=92
Sample SuiteExe API
API: https://apis.gemecosystem.com/testExecution/v2/suiteexe
Authorization: username & bridgeToken
Methods to be used: POST, PUT & GET
- POST suite exe:
Sample URL: https://apis.gemecosystem.com/testExecution/v2/suiteexe
Sample payload: –
{
“os”: “Windows 11”,
“s_run_id”: ” SAMPLEPROJECT _BETA_f7d7031f-63d9-4523-ad59-2fcdae57703b”,
“s_start_time”: 1707383054000,
“s_end_time”: 0,
“status”: “EXE”,
“project_name”: “SAMPLEPROJECT”,
“user”: “demo_user”,
“env”: “beta”,
“machine”: “GEMGN-220094”,
“report_name”: “JewelSmoke”,
“testcase_details”: [],
“framework_name”: “GEMJAR”,
“framework_version”: “1.3.5”,
“expected_testcases”: 981,
“s_id”: null
}
Sample Response: –
{
“message”: “Execution inserted successfully!”,
“operation”: “Success”,
“data”: {
“s_run_id”: “JEWELPROJECT_BETA_f7d7031f-63d9-4523-ad59-2fcdae57703b”,
“p_id”: 11715,
“s_start_time”: 1707383054000,
“s_end_time”: 0,
“status”: “EXE”,
“project_name”: “JEWEL”,
“os”: “Windows 11”,
“user”: “dipanshu.kapoor”,
“env”: “beta”,
“machine”: “GEMGN-220094”,
“framework_name”: “GEMJAR”,
“framework_version”: “1.3.5”,
“report_name”: “JewelSmoke”,
“expected_testcases”: 981,
“aborted”: false
}
}
- GET suite exe:
Required Params: s_run_id (Suite Run Id)
Sample URL: https://apis.gemecosystem.com/testExecution/v2/suiteexe?s_run_id= DEMO_BETA_546d86990f-a754-8af0f23d
Sample Response:
{
“message”: “Data fetched successfully!”,
“operation”: “Success”,
“data”: {
“s_run_id”: “DEMO_BETA_794cf1f7-3cb3-4456-9b4d-a0185a3f4117”,
“p_id”: 92,
“s_start_time”: 1707374680000,
“s_end_time”: 1707374699000,
“status”: “FAIL”,
“project_name”: “demo”,
“os”: “Windows 11”,
“user”: “ayushgarg”,
“env”: “beta”,
“machine”: “GEMGN-210261”,
“testcase_details”: [
“Submit_Form_bbcbda82_ad7c_42d8_bddf_18882a9d8bc9_1707374683000”
],
“testcase_info”: {
“TOTAL”: 1,
“FAIL”: 1
},
“framework_name”: “GEMJAR”,
“framework_version”: “1.35.45”,
“report_name”: “report”,
“expected_testcases”: 1,
“aborted”: false
}
}
- PUT suite exe API:
Sample URL: https://apis.gemecosystem.com/testExecution/v2/suiteexe
Same as POST just payload contains updated field data.
Sample TestExe API
API: https://apis.gemecosystem.com/testExecution/v2/testcase
Authorization: username & bridgeToken
Methods to be used: POST
POST test exe API:
Sample URL: https://apis.gemecosystem.com/testExecution/v2/testcase
Sample payload:
{
“base_user”:”dipanshu.kapoor”,
“invoke_user”:”dipanshu.kapoor”,
“start_time”:1707386645000,
“end_time”:1707386706000,
“run_type”:”ON DEMAND”,
“run_mode”:”Windows “,
“job_name”:”NONE”,
“name”:”Jewel Login”,
“category”: “AuthTokenController”,
“status”:”PASS”,
“machine”:”GEMGN-200103″,
“ignore”:false,
“meta_data”:[{
”TESTCASE NAME”:”Jewel Login”,
”SERVICE PROJECT”:”NONE”,
”DATE OF EXECUTION”:{“value”:1707386645000,”type”:”date”}},
{“EXECUTION STARTED ON”:{“value”:1707386645000,”type”:”datetime”},
”EXECUTION ENDED ON”:{“value”:1707386706000,”type”:”datetime”},
”EXECUTION DURATION”:”61.0 seconds”},
{“TOTAL”:2,”PASS”:2
}],
“steps”:[{
”step name”:”Launching Url”,
”step description”:”Launched Url Successfully : https://jewel.geminisolutions.in/#/login”,
”status”:”PASS”},
{
”step name”:”Window Operation : MAXIMIZE”,
”step description”:”Successfully: Performed Window Operation”,
”status”:”PASS”
}],
“user_defined_data”:{},
“s_run_id”:”JEWELPROJECT_BETA_f7d7031f-63d9-4523-ad59-2fcdae57703b”,
“product_type”:”GEMJAR”
}