Size: a a a

NodeUA - JavaScript and Node.js in Ukraine

2021 July 29

MA

Maksim Andreevich in NodeUA - JavaScript and Node.js in Ukraine
Просто скажи как ты это будешь тестировать)
источник

АП

Алексей Попов... in NodeUA - JavaScript and Node.js in Ukraine
Ок, тогда в чём проблема?
Мокнул методы. Они вернули то, что ты опредклил (для каждого теста свой набор данных)
Можешь проверять с какими параметрами вызваны моки - это тоже важно
источник

MA

Maksim Andreevich in NodeUA - JavaScript and Node.js in Ukraine
А, ты для каждого теста будешь хранить свои вычисленные результаты?
источник

АП

Алексей Попов... in NodeUA - JavaScript and Node.js in Ukraine
Мокну методы, мокну то, что они возвращают, проверю с какими параметрами их вызываю
источник

АП

Алексей Попов... in NodeUA - JavaScript and Node.js in Ukraine
Какие результаты? Забить в тестах слово Тойота? Тебе же не обязательно чтобы замоканные методы возвращали актуальные данные
источник

MA

Maksim Andreevich in NodeUA - JavaScript and Node.js in Ukraine
Кажется понял о чём ты
источник

MA

Maksim Andreevich in NodeUA - JavaScript and Node.js in Ukraine
чет я реально интеграционное что-то изобретаю, спс
источник

АП

Алексей Попов... in NodeUA - JavaScript and Node.js in Ukraine
👍
источник

AK

Alexandr Kazakov in NodeUA - JavaScript and Node.js in Ukraine
Написал try/catch, вот такая запись  res.send(err); норм ли, чтобы ошибку отсылать?

   } catch (err) {
         res.send(err);
  }
источник

D

DaunPony in NodeUA - JavaScript and Node.js in Ukraine
Ты голую ошибку без обработок посылаешь на клиент?
источник

AK

Alexandr Kazakov in NodeUA - JavaScript and Node.js in Ukraine
Типа того... расскажи как будет правильнее написать?
источник

AK

Alexandr Kazakov in NodeUA - JavaScript and Node.js in Ukraine
на фронте я раньше всегда писал типа throw new Error, а здесь вот столкнулся с send(err).
источник

D

DaunPony in NodeUA - JavaScript and Node.js in Ukraine
Можно вынести отдельный слой абстракции между твоим сервисом и контроллером для обработки ошибок. Из сервиса пробрасываешь ошибку наверх, там системную ошибку преобразуешь в понятный http code с сообщением
источник

OS

Oleh Shubin in NodeUA - JavaScript and Node.js in Ukraine
не уверен что для фронта это тоже хорошая практика, но на беке надо прятать системные ошибки от клиента и отправлять 5хх или 4хх с общим текстом без деталей
источник

D

DaunPony in NodeUA - JavaScript and Node.js in Ukraine
На фронте ошибки тоже скрывают какой-нибудь грузилкой или еще каким-нибудь компонентом, доп. текстом, а не в лицо кидают юзеру ошибку)
источник

OS

Oleh Shubin in NodeUA - JavaScript and Node.js in Ukraine
ну я о том же)
источник

AK

Alexandr Kazakov in NodeUA - JavaScript and Node.js in Ukraine
Cпасибо.
источник

AK

Alexandr Kazakov in NodeUA - JavaScript and Node.js in Ukraine
Вот слышал в видео Тимура, что не стоит устанавливать много npm-пакетов в проект. Как определять какие достойные пакеты, а какие нет?
Наверное ответ: их код посмотреть. Ну я могу не во всем разобраться там, да и наверное у всех код изучать, это столько времени займет.

Вот я себе например установил: https://www.npmjs.com/package/node-fetch 20мил скачиваний в неделю, что много. Если много скачиваний на npm, означает ли это, что npm пакет нормальный?
Я обычно пакеты, где мало скачиваний в неделю, не беру.

Вот еще я взял: https://www.npmjs.com/package/formidable тоже вроде много скачиваний.
источник

СП

Сергей Пограничный... in NodeUA - JavaScript and Node.js in Ukraine
Да он в каждом видео говорит, что скачивания не показатель, странно как вы услышали первое утверждение, а второе нет
источник

AK

Alexandr Kazakov in NodeUA - JavaScript and Node.js in Ukraine
Ага, не слышал я про количество скачиваний в видео, правда.
источник