Test JSON file structure¶
Caution
Test JSON files from previous versions of xbtest are not compatible with this version. Contact AMD support for information on how to convert a Test JSON file from previous xbtest version.
Test environment members¶
The test JSON file allows to provide various schemas defining the configuration of the tasks and the test cases to be run.
Member |
Mandator y/ Optional |
Description |
---|---|---|
|
Optional |
If necessary, to detail your test, use comments at any level in the Test JSON file. |
|
Optional |
Defines each of the test cases to be executed, which are performed in parallel. Define which test is performed. Because test cases run in parallel, you can define 0, 1, or more. When not defined in the test JSON file, a test case is not run. The Verify test case is always performed even if no test cases are specified. The following |
|
Optional |
Defines parameters of each task. Note that tasks are performed in parallel with each of the test cases. The following
|
The test JSON file has the following properties:
If the same member is repeated throughout your file, only the last value is used.
Comments can be added or removed anywhere in test JSON file using member
comment
.
Test cases are executed in parallel with exception of:
Test JSON file example¶
The following is a test JSON file example.
{
"comment": "This is an example of test JSON file",
"comment": "You can use this example as template for your own tests",
"comment": "Use comment to detail your test if necessary (you can also remove these lines)",
"testcases": {
"mmio": {
"global_config": {
"comment": "Use comment to detail your test if necessary",
"test_sequence": [
{ "duration": 10 }
]
}
},
"dma": {
"global_config": {
"comment": "Use comment to detail your test if necessary",
"test_sequence": [
{ "duration": 10, "target": "DDR" },
{ "duration": 10, "target": "HBM" }
]
}
},
"power": {
"comment": "Use comment to detail your test if necessary",
"global_config": {
"test_sequence": [
{ "duration": 60, "toggle_rate": 15 },
{ "duration": 120, "toggle_rate": 50 }
]
}
},
"memory": {
"DDR": {
"comment": "Use comment to detail your test if necessary",
"global_config": {
"test_sequence": [
{ "duration": 60, "mode": "alternate_wr_rd" }
]
}
},
"HBM": {
"global_config": {
"comment": "Use comment to detail your test if necessary",
"test_sequence": [
{ "duration": 60, "mode": "alternate_wr_rd" }
]
}
}
},
"gt_mac": {
"comment": "Use comment to detail your test if necessary",
"0": {
"global_config": {
"test_sequence": [
{ "duration": 1, "mode": "conf_10gbe_no_fec" },
{ "duration": 1, "mode": "clear_status" },
{ "duration": 10, "mode": "run" },
{ "duration": 1, "mode": "check_status" }
]
}
},
"1": {
"global_config": {
"test_sequence": [
{ "duration": 1, "mode": "conf_25gbe_c74_fec" },
{ "duration": 1, "mode": "clear_status" },
{ "duration": 10, "mode": "run" },
{ "duration": 1, "mode": "check_status" }
]
}
}
},
"gtm_prbs": {
"default": {
"global_config": {
"test_sequence": [
{ "duration": 1, "mode": "conf_gt" },
{ "duration": 1, "mode": "tx_rx_rst" },
{ "duration": 1, "mode": "rx_datapath_rst" },
{ "duration": 1, "mode": "clear_status" },
{ "duration": 60, "mode": "run" },
{ "duration": 1, "mode": "check_status" }
]
}
}
}
}
}