|
|
@@ -1,4 +1,3 @@ |
|
|
|
# -*- coding: utf-8 -*- |
|
|
|
# MegEngine is Licensed under the Apache License, Version 2.0 (the "License") |
|
|
|
# |
|
|
|
# Copyright (c) 2014-2020 Megvii Inc. All rights reserved. |
|
|
@@ -10,3 +9,26 @@ import os |
|
|
|
import sys |
|
|
|
|
|
|
|
sys.path.append(os.path.join(os.path.dirname(__file__))) |
|
|
|
|
|
|
|
|
|
|
|
def pytest_json_modifyreport(json_report): |
|
|
|
events = [] |
|
|
|
timestamp = 0 |
|
|
|
for item in json_report["tests"]: |
|
|
|
for stage in ["setup", "call", "teardown"]: |
|
|
|
if stage in item: |
|
|
|
events.append( |
|
|
|
{ |
|
|
|
"name": item["nodeid"], |
|
|
|
"ph": "X", |
|
|
|
"ts": timestamp, |
|
|
|
"dur": item[stage]["duration"] * 1e6, |
|
|
|
"cat": stage, |
|
|
|
"pid": stage, |
|
|
|
"tid": item["nodeid"], |
|
|
|
} |
|
|
|
) |
|
|
|
timestamp += events[-1]["dur"] |
|
|
|
json_report["traceEvents"] = events |
|
|
|
del json_report["collectors"] |
|
|
|
del json_report["tests"] |