本文整理汇总了Python中sut.reduce函数的典型用法代码示例。如果您正苦于以下问题:Python reduce函数的具体用法?Python reduce怎么用?Python reduce使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了reduce函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: mutate
def mutate(test):
tcopy = list(test)
i = rgen.randint(0,len(tcopy))
sut.replay(tcopy[i:])
e = sut.randomEnabled(rgen)
ok = sut.safely(e)
elapsed = time.time() - start
if RUNNING: #should branch coverage be produced
if sut.newBranches() != set([]):
for b in sut.newBranches():
print elapsed,len(sut.allBranches()),"New branch",b
if not ok: #found a bug, report it
bugs+=1
print "Found a FAILURE"
#sut.prettyPrintTest(sut.test())
print sut.failure()
print "REDUCING"
R = sut.reduce(sut.test(), sut.fails, True, True)
sut.prettyPrintTest(R)
print sut.failure()
if FAULT: #save test to a file if FAULT is enabled
filename = "failure" + str(bugs) + ".test"
sut.saveTest(R,filename)
trest = [e]
for s in tcopy[i+1:]:
if s[1]():
trest.append(s)
ok = sut.safely(s)
if not ok: #found a bug, report it
bugs+=1
print "Found a FAILURE"
#sut.prettyPrintTest(sut.test())
print sut.failure()
print "REDUCING"
R = sut.reduce(sut.test(), sut.fails, True, True)
sut.prettyPrintTest(R)
print sut.failure()
if FAULT: #save test to a file if FAULT is enabled
filename = "failure" + str(bugs) + ".test"
sut.saveTest(R,filename)
tcopy = test[i:] +trest
return tcopy
示例2: action
def action():
global actCount, bugs, failPool
act = sut.randomEnabled(rgen)
actCount += 1
ok = sut.safely(act)
if running == 1:
if len(sut.newBranches()) > 0:
print "ACTION:", act[0]
for b in sut.newBranches():
print time.time() - start, len(sut.allBranches()), "New branch", b
for s in sut.newStatements():
print time.time() - start, len(sut.allStatements()),"New statement",s
if not ok:
if faults:
bugs += 1
print "FOUND A FAILURE"
print sut.failure()
print "REDUCING"
failPool.append(sut.test())
collectCoverage()
R = sut.reduce(sut.test(),sut.fails, True, True)
sut.prettyPrintTest(R)
print sut.failure()
fname="failure" + str(bugs) + ".test"
sut.saveTest(sut.test(),fname)
errorSeqs.append(sut.currStatements())
sut.restart()
else:
expand()
return ok
示例3: Find_bugs
def Find_bugs(list_actions):
# print "Find_bugs"
global coverage_counter
global bugs
global Record
global string
safe = sut.safely(list_actions)
running_oh()
if not safe:
bugs = bugs + 1
print " *** find a bug: ",bugs
# bugs = bugs + 1
for t in sut.currStatements():
if t not in coverage_counter:
coverage_counter[t]=0
coverage_counter[t] = coverage_counter[t] + 1
# Collect_coverage()
print sut.failure()
# string = str(sut.failure)
Record = True
print "reducing..."
R = sut.reduce(sut.test(),sut.fails, True, True)
sut.prettyPrintTest(R)
# record_failures(R)
if FAULTS:
print"create file"
# for x in xrange(1,bugs):
# print "save"
sut.saveTest(R, failure + str(bugs)+ ".test")
# filename = "failure" + str(bugs) + ".test"
# sut.saveTest(sut.test(), filename)
# sut.restart()
return safe
示例4: randomAction
def randomAction():
global actCount, bugs, coverageCount, belowMean,lastAddCoverage
act = sut.randomEnabled(random.Random())
actCount += 1
ok = sut.safely(act)
if running:
if len(sut.newBranches()) > 0:
print "ACTION:",sut.randomEnabled(random.Random(seed))[0]
for b in sut.newBranches():
print time.time() - start, len(sut.allBranches()),"New branch",b
for s1 in sut.newStatements():
print time.time() - start, len(sut.allStatements()),"New statement",b
if not ok or not sut.check():
bugs += 1
print "FOUND A FAILURE"
if faults:
print("SHOW FAULT")
print sut.failure()
error.append(sut.test())
R = sut.reduce(sut.test(),sut.fails, True, True)
sut.prettyPrintTest(R)
print sut.failure()
sut.restart()
return ok
示例5: randomAction
def randomAction():
global actCount, bugs,newseq,currseq
act = sut.randomEnabled(R)
actCount += 1
ok = sut.safely(act)
if running:
if len(sut.newBranches()) > 0:
print "ACTION:",sut.randomEnabled(random.Random(seed))[0]
for b in sut.newBranches():
print time.time() - start, len(sut.allBranches()),"New branch",b
for s1 in sut.newStatements():
print time.time() - start, len(sut.allStatements()),"New statement",s1
if not ok:
bugs += 1
print "FOUND A FAILURE"
if faults:
f = sut.reduce(sut.test(), sut.fails, True, True)
sut.prettyPrintTest(f)
currseq.append((f,set(sut.currStatements())))
print("SHOW FAULT")
file = 'failure' + str(actCount) + '.test'
sut.saveTest(sut.test(), file)
sut.restart()
print sut.failure()
return ok
示例6: tester
def tester():
global sut,act,n,test,para,lCovered,actNum,bugs,M,flag, filename
act = sut.randomEnabled(rgen)
flag = 0
n = sut.safely(act)
if running:
if sut.newBranches() != set([]):
for d in sut.newBranches():
print time.time() - start, len(sut.allBranches()),"New branch",d
if len(sut.newStatements()) > 0:
test = sut.state()
para = True
print sut.newStatements()
if (para == False):
if (lCovered != None):
if (lCovered in sut.currStatements()):
test = sut.state()
para = True
actNum += 1
if (n == 0):
bugs += 1
print "A failure has been found!", bugs
print sut.failure()
M = sut.reduce(sut.test(),sut.fails, True, True)
sut.prettyPrintTest(M)
print sut.failure()
filename ='failure%d.test'%bugs
sut.saveTest(M,filename)
flag = 1
示例7: running_oh
def running_oh():
global actinos, elapsed, lastAddCoverage, median_even, median_odd
if len(sut.newBranches()) != set ([]):
print "ACTION:", list_actions[0]
for s in sut.newBranches():
print elapsed,len(sut.allBranches()),"New branch",s
if len(sut.newStatements())> 0:
print "ACTION:", list_actions[0]
for s in sut.newStatements():
print elapsed,len(sut.allStatements()),"New statement",s
old_test = list(sut.test())
store_new_test = sut.reduce(old_test,sut.coversStatements(sut.newStatements()))
sut.replay(old_test)
testBuffer.append(store_new_test)
currentStatementBuffer.append(set(sut.currStatements()))
lastAddCoverage = set(sut.currStatements())
for s in median_odd or median_even:
if s in sut.currStatements() and s not in lastAddCoverage:
print "find new path to lower coverstatements: ", s
testBuffer.append(list(sut.test()) )
currentStatementBuffer.append(set(sut.currStatements()))
lastAddCoverage = set(sut.currStatements() )
示例8: randomAction
def randomAction():
global bug_no, time_start, allAction, ii
action = sut.randomEnabled(rand)
ok = sut.safely(action)
elapsed = time.time() - time_start
if RUNNING_DETAIL:
if len(sut.newBranches()) > 0:
print "ACTION:", action[0]
for b in sut.newBranches():
print elapsed, len(sut.allBranches()), "New branch", b
if not ok: # found a bug
bug_no += 1
print "FOUND A BUG! #", bug_no
print sut.failure()
print("REDUCING")
reduce = sut.reduce(sut.test(), sut.fails, True, True)
sut.prettyPrintTest(reduce)
print(sut.failure())
# write the bug to file if FAULT_ARGUMENT is enabled
if (FAULT_CHECK):
f = open((failure_file + str(bug_no) + ".test"), "w")
print >> f, sut.failure()
# print sequence that causes failure
j = 0
for (s_reduces, _, _) in reduce:
steps_reduce = "# STEP " + str(j)
print >> f, sut.prettyName(s_reduces).ljust(80 - len(steps_reduce), ' '), steps_reduce
j += 1
f.close()
print "time: ", time.time() - time_start
return ok
示例9: newState
def newState():
global rgen,sut,collected_test,storedTest,action_cnt,bugfound
for i in xrange(0,DEPTH):
action = sut.randomEnabled(rgen)
no_bug_found = sut.safely(action)
if RUNNING:
if sut.newBranches() != set([]):
for d in sut.newBranches():
print time.time() - start,len(sut.allBranches()),"New Branches",d
if len(sut.newStatements()) > 0:
collected_test = sut.state()
storedTest = True
print "new statement:",sut.newStatements()
if (not storedTest) and (lst_coverage != None) and (lst_coverage in sut.currStatements()):
collected_test = sut.state()
storedTest = True
action_cnt += 1
if not no_bug_found:
bugfound += 1
print "A failure happened here."
rds = sut.reduce(sut.test(),sut.fails, True, True)
sut.prettyPrintTest(rds)
print sut.failure()
break
示例10: action
def action():
global actCount, bugs, failPool
act = sut.randomEnabled(rgen)
actCount += 1
ok = sut.safely(act)
if running == 1:
if len(sut.newBranches()) > 0:
print "ACTION:", act[0]
for b in sut.newBranches():
print time.time() - start, len(sut.allBranches()), "New branch", b
if faults:
if not ok:
bugs += 1
print "FOUND A FAILURE"
print sut.failure()
print "REDUCING"
failPool.append(sut.test())
collectCoverage()
R = sut.reduce(sut.test(),sut.fails, True, True)
sut.prettyPrintTest(R)
print sut.failure()
f = open(("failure" + str(bugs) + ".test"),"w")
f.writelines(str(sut.failure()))
f.close()
sut.restart()
else:
expand()
return ok
示例11: randomAction
def randomAction():
global actCount, bugs, fails
sawNew = False
act = sut.randomEnabled(seeds)
actCount += 1
ok = sut.safely(act)
propok = sut.check()
if running:
if sut.newBranches() != set([]):
for b in sut.newBranches():
print time.time()-start,len(sut.allBranches()),"New branch",b
sawNew = True
else:
sawNew = False
if not ok or not propok:
if faults:
bugs += 1
fail.append(sut.test())
saveCover()
R = sut.reduce(sut.test(),sut.fails, True, True)
sut.restart()
print "FAILURE FOUND.....FAILURES ARE STORING IN FILES"
fault = sut.failure()
fname = 'failure' + str(bugs) + '.test'
wfile = open(fname, 'w+')
wfile.write(str(fault))
wfile.close()
sut.restart()
else:
expandPool()
return ok
示例12: notOK
def notOK():
global bugs, sut
bugs += 1
print "FOUND A FAILURE"
print sut.failure()
print "REDUCING"
R = sut.reduce(sut.test(), sut.fails, True, True)
sut.prettyPrintTest(R)
print sut.failure()
示例13: newStatement
def newStatement():
global lastAddCoverage
print "NEW STATEMENTS DISCOVERED",sut.newStatements()
oldTest = list(sut.test())
storeTest = sut.reduce(oldTest,sut.coversStatements(sut.newStatements()))
print "OLD LENGTH = ",len(oldTest),"NEW LENGTH = ",len(storeTest)
sut.replay(oldTest)
fullPool.append((storeTest, set(sut.currStatements())))
lastAddCoverage = set(sut.currStatements())
return
示例14: failures
def failures(sut,bugs, Config, faults_file):
bugs +=1
print "FOUND A FAILURE"
print sut.failure()
print "REDUCING"
failPool.append(sut.test())
collectCoverage()
R = sut.reduce(sut.test(), sut.fails, True, True)
sut.prettyPrintTest(R)
print sut.failure()
示例15: failure
def failure():
global bugs
bugs += 1
collectCoverage()
R = sut.reduce(sut.test(), sut.fails, True, True)
if config.faults :
filename = 'failure%d.test'%bugs
sut.saveTest(sut.test(), filename)
sut.prettyPrintTest(R)
sut.restart()
return