Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

189
Views
¿Es posible colocar archivos de prueba en el directorio de páginas en Next.js?

Estoy escribiendo pruebas de integración para las rutas API en una aplicación Next.js y me pregunto si hay algún problema al colocar el archivo index.test.ts en el directorio /pages . Prefiero que la prueba esté lo más cerca posible del archivo en lugar de tener que mapear la estructura del proyecto dentro del directorio __test__ .

./pages/api/path/index.ts

 handler.get(async (req: NextApiRequest, res: NextApiResponse) => { ... }); export default handler;

./pages/api/path/index.test.ts

 import { testClient } from "__test__/utils/testClient"; describe("Testing API POST: /api", () => { test("Should return 401 when not authenticated", async () => { const request = testClient({ handler }); const res = await request.post("/api/applications"); expect(res.status).toEqual(401); }); });
over 4 years ago · Santiago Trujillo
1 answers
Answer question

0

De forma predeterminada, Next.js tendrá en cuenta cualquier archivo que termine con tsx , ts , jsx o js en la carpeta de pages con el fin de crear rutas y enrutamiento de páginas/API.

De la documentación de Extensiones de página personalizadas :

Next.js asume que cada archivo tsx/ts/jsx/js en el directorio de pages es una página o ruta API, y puede exponer rutas no deseadas vulnerables a ataques de denegación de servicio, o arrojar un error como el siguiente al compilar el paquete de producción

Agregar un archivo llamado index.test.ts en la carpeta de pages (o cualquier subcarpeta) incluirá ese archivo como una página real y podría generar errores durante el tiempo de compilación.

Puede eludir esto modificando las extensiones que Next.js espera mediante la propiedad pageExtensions en next.config.js .

 module.exports = { // Default value is ['tsx', 'ts', 'jsx', 'js'] pageExtensions: ['page.tsx', 'page.ts', 'page.jsx', 'page.js'] }

Con esta configuración, solo se tendrán en cuenta las páginas con las extensiones anteriores. Por lo tanto, podría tener la siguiente estructura de carpetas de pages , con archivos de prueba ubicados en el mismo lugar.

 pages/ ├─ api/ │ ├─ path.page.ts │ └─ path.test.ts ├─ _app.page.ts ├─ _document.page.ts ├─ index.page.ts └─ index.test.ts

Se ignorarían tanto path.test.ts como index.test.ts .

over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!