An management system for helping organize the test results, dashboard, test nodes, test suites etc.
- Install Visual Studio 2026.
- Install .NET 10 SDK.
- Install MongoDB 8.0+.
- Install Node.js 18+.
- Install Git.
- Install SQL Server Management Studio (SSMS) (optional).
- Install XMind 8+ (optional).
- Open
Prism.slnxin Visual Studio. - Set
prism.web.serviceas Startup Project. - Start debugging (
F5). - Default local service URL is
https://localhost:44303/.
The Web API prefix is api/v1.
- Swagger UI:
/swagger - Swagger JSON document:
/swagger/docs/v1 - API base path:
/api/v1
For a default local run, use:
https://localhost:44303/swaggerhttps://localhost:44303/swagger/docs/v1https://localhost:44303/api/v1
These endpoints are used by prism.client:
POST /api/v1/TestResult/AddResult/POST /api/v1/TestResult/AddEnvirnoment/POST /api/v1/TestResult/AddParameter/POST /api/v1/TestResult/AddMetadata/
- Launch
prism.web.service. - Run unit tests in Visual Studio Test Explorer.
- Test the Web API with Swagger UI or Postman.
- You can also use test requests under
prism.model.Test/Fixtures/prism-test-requests.json. - Use the
TestManagementDBEntitiesconnection string inprism.web.service/Web.configto switch the target database (for example,initial catalog=TestManagementDBTest).
prism.client is included as a git submodule. The Python client script is:
prism.client/prism.client.python/prism_client.py
From prism.client/prism.client.python:
pip install -r requirements.txtExample result.json:
{
"summary": {
"throughput": 1234,
"latency_ms": 21.4,
"passed": true
},
"details": [
{
"name": "case_001",
"status": "Pass",
"duration_ms": 120
}
]
}Run from prism.client/prism.client.python:
python prism_client.py https://localhost:44303/api/v1 \
-p YourProject \
-t YourTestJob \
-m result \
-n benchmark-run-20260609 \
-j result.json \
-b Pass \
-r PassNotes:
hostmust include the API prefix, for examplehttps://localhost:44303/api/v1.-gcan be provided to set a specific build GUID. If omitted, one is auto-generated.- Use
-m env,-m param, or-m metato upload environment/parameter/metadata with the same flow.