А где здесь должна быть ошибка? Скрипт завершится корректно всегда, так как все виды исключений приведут к опрделенному обработчику ошибок, который не возвращает код ошибки а только печатает результатю. Результат выполнения всегда будет 0.
Как и отписал товарищ @5am постом ниже - для текущей реализации “теста” добавьте exit(1) после принта с текстом экзепшена
print("Exception found",format(e))
exit(1)
А вообще так не делается. Убирайте try/except вообще, и пусть тесты падают сами по себе, при возникновении ошибок; текст ошибки вместе с трейсбеком увидите в том же аутпуте консоли
Вообще смотрите в сторону хотя бы стандартного unittest фреймворка, для нормальной организации тестов, ибо код из первого поста - это не тест, а костыль)