Mocha js Uncaught TypeError: невозможно прочитать свойства неопределенного (чтение «следует»)

Итак, я пытаюсь проверить свой API и мокко js, и я получаю эту ошибку.

SAMPLE unit test
1) should return posts with tag tech sorted by likes


0 passing (26ms)
1 failing

1) SAMPLE unit test
  should return home page:
  Uncaught TypeError: Cannot read properties of undefined (reading 'should')
  at Test.<anonymous> (test\get_info.test.js:22:18)
  at Test.assert (node_modules\supertest\lib\test.js:172:8)
  at localAssert (node_modules\supertest\lib\test.js:120:14)
  at C:\Users\tiktk\Desktop\Fetch\node_modules\supertest\lib\test.js:125:7
  at Test.Request.callback (node_modules\superagent\lib\node\index.js:927:3)
  at ClientRequest.<anonymous> (node_modules\superagent\lib\node\index.js:844:12)
  at ClientRequest.emit (node:events:390:28)
  at Socket.socketErrorListener (node:_http_client:447:9)
  at Socket.emit (node:events:390:28)
  at emitErrorNT (node:internal/streams/destroy:157:8)
  at emitErrorCloseNT (node:internal/streams/destroy:122:3)
  at processTicksAndRejections (node:internal/process/task_queues:83:21)

У меня установлены и обновлены все зависимости, но я все еще получаю эту ошибку.

var supertest = require("supertest");
var should = require("should");

var server = supertest.agent("http://127.0.0.1:3000");

describe("Api unit test",function(){

  it("should return posts with tag tech sorted by likes",function(done){

    server
    .get("/api/posts?tags=tech&sortBy=likes&direction=desc")
    .expect("Content-type",/json/)
    .expect(200) 
    .end(function(res){
      // HTTP status should be 200
      res.status.should.equal(200);
      // Error key should be false.
      res.body.error.should.equal(false);
      done();
    });
  });
});

Ссылка должна возвращать набор объектов в виде файла JSON, отсортированного по лайкам (в данном случае)

Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
0
0
74
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Ошибка, скорее всего, возникает из-за того, что res.body.error не определено, когда у вас нет ошибки. В этом случае ваш тест должен выглядеть примерно так:

res.body.should.not.have.property('error')

Чтобы подтвердить мою гипотезу, вы должны console.info содержимое res.body перед проверкой ошибки.

Другие вопросы по теме