#!/usr/bin/env python import json import sys if len(sys.argv) > 1: filename = sys.argv[1] else: filename = './result.json' def get_key(item): ds = item[0].split('_') no = int(ds[1]) * 10000 + int(ds[2]) * 100 + int(ds[3]) ro = ds[0] return '%d-%s' % (no, ro) result = json.load(open(filename, 'r')) o = open('./result.csv', 'w') o.write('Case,Status,Started,Stopped,Reason\n') for k, v in sorted(result.items(), key=get_key): o.write('%s,%s,%s,%s,%s\n' % ( k, (v['passed'] and 'Pass') or 'Fail', v['started'], v['stopped'], (v['error'] or '').replace('\n', ' '), ))