本文整理汇总了Python中sut.currStatements函数的典型用法代码示例。如果您正苦于以下问题:Python currStatements函数的具体用法?Python currStatements怎么用?Python currStatements使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了currStatements函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: 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() )
示例2: checkAlg
def checkAlg():
global error, noerror,newseq,currseq,states
newseq=sut.newStatements()
c = sut.check()
if c:
if(not ((newseq in error) or (newseq in noerror))):
states.insert(ntest-1,sut.state())
noerror.append(sut.currStatements())
else:
error.append(sut.currStatements())
示例3: 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
示例4: checkAlg
def checkAlg():
global error, noerror,newseq,currseq,states
#newseq = sut.randomEnableds(R, depth)
newseq=sut.newStatements()
c=sut.check()
if c:
if(not ((newseq in error) or (newseq in noerror))):
states.insert(ntest-1,sut.state())
noerror.append(sut.currStatements())
flags(newseq,c)
else:
error.append(sut.currStatements())
示例5: Statement
def Statement():
global belowMid,lastAddCoverage
if len(sut.newStatements()) != 0:
oldTest = list(sut.test())
storeTest = sut.reduce(oldTest,sut.coversStatements(sut.newStatements()))
sut.replay(oldTest)
visited.append((storeTest, set(sut.currStatements())))
lastAddCoverage = set(sut.currStatements())
return
for s in belowMid:
if s in sut.currStatements() and s not in lastAddCoverage:
visited.append((list(sut.test()), set(sut.currStatements())))
lastAddCoverage = set(sut.currStatements())
return
示例6: 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
示例7: 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
示例8: collectCoverage
def collectCoverage():
global coverageCount
for s in sut.currStatements():
if s not in coverageCount:
coverageCount[s] = 0
coverageCount[s] += 1
示例9: randomAction
def randomAction():
global actCount, bugs, visited
act = sut.randomEnabled(rgen)
actCount += 1
ok = sut.safely(act)
elapsed = time.time() - start
if not ok:
bugs += 1
if FAULTS:
name = "failure"+str(bugs)+".test"
f = sut.test()
sut.saveTest(f,name)
else:
if RUNNING:
if sut.newBranches() != set([]):
print "ACTION:",act[0]
for d in sut.newBranches():
print elapsed,len(sut.allBranches()),"New branch",d
sawNew = True
else:
sawNew = False
if sut.newStatements() != set([]):
print "ACTION:",act[0]
for s in sut.newStatements():
print elapsed,len(sut.allStatements()),"New statement",s
sawNew = True
else:
sawNew = False
if len(sut.newStatements()) != 0:
visited.append((list(sut.test()), set(sut.currStatements())))
return ok
示例10: 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
示例11: crossover
def crossover(test,test2):
global bugs
tcopy = list(test)
#randomly choose part of test
i = rgen.randint(0,len(tcopy))
#replay to be the chosen state
sut.replay(tcopy[:i],catchUncaught = True)
trest = []
for s in test2[i:]:
if s[1]():
trest.append(s)
#check whether it is correct
ok = sut.safely(s)
if not ok:
bugs = bugs+1
errors.append(sut.currStatements())
fault_collection()
#to do crossover
tcopy = test[:i]+trest
#if we find new branches
if len(sut.newCurrBranches()) != 0:
print "NEW BRANCHES DUE TO CROSSOVER:",sut.newCurrBranches()
return tcopy
示例12: 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
示例13: mutate
def mutate(test):
global bugs
tcopy = list(test)
#randomly choose part of the chosen case
i = rgen.randint(0,len(tcopy))
#replay to be the chosen state
sut.replay(tcopy[:i],catchUncaught = True)
e = sut.randomEnabled(rgen)
#check whether it is correct
ok = sut.safely(e)
if not ok:
bugs = bugs+1
errors.append(sut.currStatements())
fault_collection()
trest = [e]
for s in tcopy[i+1:]:
if s[1]():
trest.append(s)
sut.safely(s)
tcopy = test[:i]+trest
#if we find new branches
if len(sut.newCurrBranches()) != 0:
print "NEW BRANCHES DUE TO MUTATION:",sut.newCurrBranches()
return tcopy
示例14: collectCoverage
def collectCoverage():
'Update the global coverage count for executions on each statement'
global coverageCount
for s in sut.currStatements():
if s not in coverageCount:
coverageCount[s] = 0
coverageCount[s] += 1
示例15: 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