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"
В приведенном выше коде проверка номера строки, чтобы запрос = 100 и ответ = 200, попадали в одну строку. Это мне нужно.Чтобы найти номер строки строки, найденной в Python
Кроме того, я хочу, чтобы распечатать результат как "Pass" только при соблюдении следующих условий ...
- 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
В вышеуказанном файле результат Fail, поскольку запрос и ответ имеют разные значения va кроме обязательных значений. Только строка 5 имеет правильные значения, поэтому результат не выполнен.