Herramienta gratis

Compilador online con casos de prueba

Escribe tu programa, agrega casos de prueba (una entrada y la salida que esperas) y ejecútalos todos a la vez. Cada prueba vuelve aprobada o reprobada, con lo que imprimió tu programa. Gratis, sin registro, en 46 lenguajes.

Por el equipo de OnlineCompiler.io. Actualizado el .

Also in EnglishTambém em português

Casos de prueba

Hasta 8 pruebas. Cada una ejecuta el código de arriba con su propia entrada.

  1. Prueba 1

  2. Prueba 2

Cómo revisar tu código con casos de prueba

  1. Elige un lenguaje en el editor y escribe o pega tu programa. Lee su entrada de la entrada estándar (stdin) e imprime su respuesta.
  2. En cada prueba, pon la entrada que lee tu programa y exactamente lo que debe imprimir. Puedes agregar hasta 8 pruebas.
  3. Elige cómo se compara la salida. La opción predeterminada ignora los espacios al final de las líneas y las líneas en blanco al final, como la mayoría de los jueces en línea.
  4. Presiona Ejecutar pruebas. Cada prueba sale aprobada, o muestra su veredicto y lo que tu programa imprimió en su lugar.

Las dos pruebas de ejemplo pasan con el programa inicial de casi todos los lenguajes del editor. Cámbialas por los ejemplos de tu problema. El botón Ejecutar del editor sigue ejecutando el código una vez con la entrada de su pestaña Entrada, lo que sirve para depurar un caso a la vez.

Practica para exámenes de programación y pruebas técnicas

Las pruebas técnicas de reclutamiento y los exámenes prácticos de laboratorio suelen calificar un programa como lo hace esta herramienta: lo ejecutan con entradas que no ves y comparan lo que imprime con la salida esperada, con un tiempo límite. Antes de enviar, pega los ejemplos del problema como pruebas y luego agrega los casos que detectan la mayoría de los errores:

  • la entrada más pequeña, como 0, 1 o una lista vacía;
  • la entrada más grande que permite el problema, para detectar soluciones lentas y desbordamiento de enteros;
  • números negativos, valores repetidos y entradas ya ordenadas;
  • entradas con un espacio de más o una línea en blanco al final.

Imprime solo la respuesta. Un mensaje como Ingresa n: pasa a ser parte de tu salida y reprueba todas las pruebas.

Qué significa cada resultado

ResultadoVeredicto en la APIQué pasó
AprobadaacceptedEl programa imprimió la salida esperada y terminó sin errores.
Respuesta incorrectawrong_answerSe ejecutó sin errores, pero imprimió otra cosa. Compara las dos salidas.
Tiempo límite excedidotime_limit_exceededTardó más de 2 segundos con esa entrada. Busca un ciclo infinito o un algoritmo lento.
Error en tiempo de ejecuciónruntime_errorSe detuvo con un error o terminó con un código de salida distinto de cero. El mensaje de error muestra dónde.
Error de compilacióncompilation_errorEl código no compiló, así que las pruebas no se ejecutaron. La salida del compilador aparece debajo de las pruebas.
Límite de memoria excedidomemory_limit_exceededUsó más de 512 MB de memoria.
Límite de salida excedidooutput_limit_exceededImprimió más de 64 KB.

Ejecuta casos de prueba desde tu app

Esta página funciona con la API run-tests (en inglés). Una solicitud con el código y sus pruebas devuelve un veredicto para cada prueba, un veredicto general y una calificación, y las pruebas ocultas devuelven solo su veredicto. Es gratis hasta 100,000 ejecuciones al mes, y cada prueba cuenta como una ejecución. Una solicitud admite hasta 8 pruebas en el plan Free, 20 en Starter y 40 en Pro.

Terminal
curl -X POST https://api.onlinecompiler.io/api/run-tests/ \
  -H "Authorization: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "compiler": "python-3.14",
    "code": "a, b = map(int, input().split())\nprint(a + b)",
    "tests": [
      {"input": "1 2\n", "expected_output": "3\n"},
      {"input": "-5 5\n", "expected_output": "0\n"},
      {"input": "1000000000 1000000000\n", "expected_output": "2000000000\n", "hidden": true}
    ],
    "scoring": "percent"
  }'

Para un juez completo o un script de calificación, mira cómo construir un juez en línea y la API de calificación automática (ambas en inglés). Para poner un editor con pruebas en tu propia página, el runTests() del widget (en inglés) hace lo mismo que esta página.

Preguntas frecuentes

¿Este compilador online con casos de prueba es gratis?

Sí, es gratis, sin cuenta y sin anuncios. Tu código se ejecuta en nuestros servidores, en un sandbox nuevo para cada prueba, en cualquiera de los 46 lenguajes.

¿Cuántos casos de prueba puedo ejecutar a la vez?

Hasta 8 por ejecución en esta página. Cada prueba ejecuta tu programa una vez con su propia entrada, con un tiempo límite de 2 segundos y 512 MB de memoria.

¿Por qué falla mi prueba si la salida se ve igual?

Casi siempre por una diferencia que no se nota a simple vista: un mensaje como input("Ingresa un número: ") se imprime como parte de la salida, un valor sale con decimales de más o las palabras están en otro orden. Con la comparación predeterminada, los espacios al final de las líneas y las líneas en blanco al final no cuentan; elige "Ignorar todos los espacios" si el espaciado cambia dentro de las líneas.

¿Mis pruebas pueden revisar decimales o tablas?

Sí. "Números con diferencia de hasta 1e-6" acepta números que difieren por un pequeño error de redondeo, y "Líneas en cualquier orden" acepta las mismas líneas en otro orden, lo que sirve para la salida de SQL y pandas.

¿Puedo ocultar casos de prueba, como en un juez en línea?

En esta herramienta, no. La API run-tests acepta "hidden": true en una prueba y entonces devuelve solo su veredicto, nunca su entrada ni su salida. Es gratis hasta 100,000 ejecuciones al mes, y cada prueba cuenta como una ejecución.

¿Se guarda mi código?

Sí. Cada ejecución se guarda en el historial de ejecuciones con su salida, como todas las ejecuciones del sitio. La página de seguridad (en inglés) explica qué se almacena y por cuánto tiempo.