Есть отличная удаленная работа для php+codeception+jenkins+allure+docker спецов. 100% remote! Присоединиться к проекту

Как показать номер строки где произошла ошибка?

selenium
python
webdriver
Теги: #<Tag:0x00007f7b6466e0b8> #<Tag:0x00007f7b64672848> #<Tag:0x00007f7b64680b00>

#1

Приветь всем!

Я собираю все свои ошибки в массив:
results = []
Потом этого я проверяю если ошибки нашлись:
if len(results) > 0:
values = “\n”.join(v for v in results)
print (values)
Как я могу найти в какой строке произошла ошибка? Или имя блока где произошла ошибка.


(Виталий Коряков) #2

Собрать в массив ошибок уже с номером строки?


#3

Ну я думаю что можно словить номер строки где произошла ошибка…


(5am) #4

вопрос: а зачем ? может стоит взглянуть в сторону Soft Assert ?


#5

Что бы знать на какую строку смотреть.
Я например получаю ошибку:
Cannot locate option with value: 24
Я не могу знать в какой строке этот параметр забит.


(Maxim Zaitsev) #6

А список откуда это все узнает? Нужно значит явно указывать при добавлении ошибки в список.
result.append (‘string 25: Cannot locate option with value: 24’)

P.S
Зачем перебор списка в join ?

if len(results) > 0:
     values = "\n".join(v for v in results)

#7

Я уже изменил на:

if len(results) > 0:
values = “\n”.join(results)

Хотел проверить одну вещь


(5am) #8

окей… но я до сих пор не могу понять какую изначальную проблему пытается решить ТС :slight_smile:


#9

Отловить ошибку с индикацией, где произошла ошибка


(Bolatbek) #10

Посмотри в сторону либа - logging.


(You Rooock) #11

Почему не выводить стек трейс?


#12

А как это можно написать в моем случаи?


(5am) #13

https://docs.python.org/2/library/traceback.html