def c1():
logfile = open("D:\myfile.txt", 'r')
for num1, line in enumerate(logfile):
if "request=100" in line:
print num1
return True
return False
def c2():
logfile = open("D:\myfile.txt", 'r')
for num2, line in enumerate(logfile):
if "response=200" in line:
print num2
return True
return False
if c1() == True and c2() == True:
print "Test Case Passed"
else:
print "Test Case Failed"
在上面的代码中,不存在检查行号以便 request=100 和 response=200 位于同一行的情况。我需要的。
另外,我只想在满足以下条件时将结果打印为“通过”...
- both c1 and c2 are True
- both "request=100" and "response=200" should fall in same line
- if any other line also consist of "request=100" and "response=200" then that also should be counted
如果出现以下情况,结果为“失败”:
- if any one line which consists of "request=200" and "response=200"
- if any one line which consists of "request=100" and "response=100"
- or any case in which no line should have apart from "request=100" and "response=200"
考虑“myfile”具有以下数据:
request=100 XXXXXXXXXXXXXXXXXXXXXXXXXXXX \n
XXXXXXXXXXXXXXXX response=200 XXXXXXXXX \n
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX \n
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX \n
XXXX request=100 XXXXX response=200 XXXXXXXXXXX \n
XXXXXXX request=200 XXXXXX response=100 XXXXXXX \n
XXXXXXXX request=100 XXXX response=100" \n
在上面的文件中,result 是 Fail 因为 request 和 response 除了需要的值之外有不同的值。只有第 5 行具有正确的值,因此结果失败。