您的位置:首页 > 其它

将内核生成的打印信息,提出后,得到相关的cases信息

2017-11-02 19:39 267 查看


将testcast, result,total tests, total skipped tests, total failure整理正csve文档

ModuleTestSuitTestCaseResultTotal TestsTotal Skipped TestsTotal Failures
ddtsata_dvd_detectSATA_S_FUNC_DVD_DETECTFAIL1
0
1
ddtsata_raw_perfSATA_S_PERF_RAW_PERF_100M_BS25FAIL6
0
6
  SATA_S_PERF_RAW_PERF_100M_BS1MFAIL   
我自己编写了python脚本实现,代码如下:

#!/usr/bin/python
#coding=utf-8

import os
import csv
LINENUM = 2 ** 20

#the case of dir
def gci_sub(filepath):
global LINENUM
system = ['cpuhotplug','ipc','math','mm','nptl','pipes','realtime','sched','syscalls','timers']
module = ''
files = os.listdir(filepath)
with open('./result_xlsx/result.csv','wb') as csvfile:
spamwriter = csv.writer(csvfile,dialect = 'excel')
spamwriter.writerow(['Module', 'TestSuit', 'TestCase','Result','Total Tests','Total Skipped Tests','Total Failures'])
for fi in files:
tmplist1 = []
tmptotaltest = 0
tmpskiptest = 0
tmptotalfailure = 0
#get filename
filename = os.path.splitext(fi)[0]
if filename in system:
module = 'system'
else:
module = 'ddt'

#filename dir
file_dir = os.path.join(filepath,fi)
#open filename
fp = open(file_dir)
#get line number  and get linue value
for (num, value) in enumerate(fp):
#testcase = value.find("Testcase")
result = ''
testcase = value.find("Exit Value")
if testcase != -1:
#print value
LINENUM = num + 1
#spamwriter.writerow([module,filename,'block','','','',''])

if num > LINENUM:
if value.find(" ") == -1:
#print num
LINENUM = 2 ** 20
else:
#print "value:",value
casename = value.split(' ')[0]

#get pass_failure

pass_fail = value.split(' ')[1:len(value.split(" "))]
if "FAIL" in pass_fail:
result = 'FAIL'
elif "PASS" in pass_fail:
result = 'PASS'
else:
result = 'CONF'

tmp = [" "," ",casename,result," "," "," "]
tmplist1.append(tmp)
#print tmplist1
#
totaltests_index = value.find("Total Tests:")
if totaltests_index != -1:
tests_num = value.split(" ")[2]
#print value.split(" ")
#print tmplist1[0][4]
tmplist1[0][4] = tests_num

#
skippedtest_index = value.find("Total Skipped Tests:")
if skippedtest_index != -1:
skiptest = value.split(" ")[3]
tmplist1[0][5] = skiptest

totalfailuir_index = value.find("Total Failures:")
if totalfailuir_index != -1:
failuirtest = value.split(" ")[2]
tmptotalfailure = failuirtest
tmplist1[0][0] = module
tmplist1[0][1] = filename
tmplist1[0][6] = failuirtest
#insert value
for list1 in range(len(tmplist1)):
spamwriter.writerow(tmplist1[list1])

gci_sub('./result_test/')
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  内核 文档