Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

860
Vistas
Node Express Mocha test: TypeError: chai.request is not a function

I have a Typscript app and API. I wrote the below test per numerous Google searches and some examples found here on SO and other places. I see no issue in the test code. Googling TypeError: chai.request is not a function, so far is getting me now where. Do you see my error below?

Thank you, thank you, thank you for any help :-)

enter image description here

over 4 years ago · Santiago Trujillo
3 Respuestas
Responde la pregunta

0

I solved this by the following approach (Express.js with TypeScript)

import chai from 'chai';
import chaiHttp from 'chai-http';

chai.use(chaiHttp);

Hope it helps.

Remember to install @types/chai and other type definition packages for the block above to work

over 4 years ago · Santiago Trujillo Denunciar

0

I can reproduce the problem if I enable the esModuleInterop compiler option. When this option is enabled, import * as chai from 'chai'; only imports the members that the chai module has at the time it is imported. Indeed, I believe it's considered dodgy to add exports to an ES module at runtime. Try import chai from 'chai'; or import chai = require('chai'); instead; either one is working for me.

over 4 years ago · Santiago Trujillo Denunciar

0

You are mixing import and require syntax, it's a bad idea!

Use only import syntax :

import * as chai from 'chai';
import * as chai-http from 'chai-http';

chai.use(chai-http);

Edit

Unfortunately, it seems that the es6 module syntax is not supported in chai-http. You can see the issue here

import * as chai from 'chai';
import chaiHttp = require('chai-http');

chai.use(chai-http);
over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda