Configuraciones para Preguntas de Desarrollador Front-end, Back-end y Full stack
Last updated: December 12, 2024
Un proyecto válido debe tener un archivo de configuración válido hackerrank.yml en el directorio raíz. Consulta los ejemplos a continuación o la referencia de configuración para aprender cómo escribir uno para tu proyecto.
Referencia de Configuración
version: (número)
- [requerido] Número de versión para el esquema de configuración.
- La versión actual es 1.0configuration: (hash)
- [requerido] Atributo principal para la configuración.
- Todas las configuraciones del proyecto se proporcionan aquí
has_webserver: (boolean)
- [requerido] Define si un proyecto tiene un servidor web expuesto
(que puede ser accedido fuera del servidor).
- Use puerto abierto (3000, 3030, 5000, 6000, 6001, 8000, 8080)
para publicar el servidor. Todos los demás puertos están bloqueados para comunicación externa.
readonly_paths: (array)
- [opcional] Una lista de rutas de archivos y/o patrones regex
que deben marcarse como de solo lectura para los candidatos
scoring: [opcional] (hash)
- [requerido] Atributo principal para la configuración relacionada con la puntuación
command: (string)
- [requerido] La orden de puntuación se define aquí.
- Este atributo debe ser proporcionado para que la puntuación funcione
files: (array)
- [opcional] Se puede proporcionar aquí una lista de archivos de salida de puntuación.
- Una vez que se ejecuta la orden de puntuación, la plataforma buscará estos archivos
y los analizará para calcular la puntuación final.
- Si estos archivos no se proporcionan, la salida del comando de puntuación se usa para puntuar.
testcase_weights: (hash [<nombre del caso de prueba>:<peso>])
- [opcional] Este atributo puede usarse para proporcionar puntuación ponderada
para casos de prueba.
- La suma total de todos los pesos debe ser
1. La validación fallará si la suma total de todos los pesos no es uno.
- Los pesos de los casos de prueba se corresponden con el nombre del caso de prueba,
por lo que todos los nombres de los casos de prueba deben ser únicos (en todos los archivos).
ide_config: (hash)
- [requerido] Toda la configuración relacionada con IDE se proporciona aquí
default_open_files: (array)
- [requerido] Proporcione una lista de archivos predeterminados para abrir aquí.
La ruta debe ser relativa a la carpeta raíz del proyecto.
project_menu: (string)
- [requerido] Defina los comandos del menú del proyecto aquí. Todos los atributos hijos son obligatorios.
run:
- [requerido] Proporcione el comando para el elemento del menú Proyecto > Ejecutar
install:
- [requerido] Proporcione el comando para el elemento del menú Proyecto > Instalar
test:
- [requerido] Proporcione el comando para el elemento del menú Proyecto > Probar
Ejemplo 1: Configuración de muestra para un proyecto de node sin puntuación
version: 1.0configuration:
has_webserver: false
ide_config:
default_open_files:
- app.js
project_menu:
run: npm start
install: npm install
test: npm testEjemplo 2: Configuración de muestra para un proyecto de node con un servidor web y puntuación
version: 1.0configuration:
has_webserver: true
scoring:
# Se espera que npm test produzca la salida de prueba en results/unit.xml.
command: "npm test"
files:
- results/unit.xml
ide_config:
default_open_files:
- app.js
project_menu:
run: npm start
install: npm install
test: npm testEjemplo 3: Configuración de muestra para un proyecto API de Java Spring Boot con casos de prueba ponderados
versión: 1.0configuración:
tiene_servidor_web: falso
puntuación:
comando: "mvn clean test"
archivos:
- target/customReports/result.xml
peso_caso_prueba:
# Los pesos deben sumar un total de 1
Crear un modelo: 0.2
Eliminar un modelo: 0.2
Editar un modelo: 0.2
Filtrar modelo por atributo: 0.4
ide_config:
archivos_abiertos_predeterminados:
- src/main/java/com/hackerrank/sample/controller/ModelController.java
- src/main/java/com/hackerrank/sample/model/Model.java
menú_proyecto:
ejecutar: mvn clean spring-boot:run
instalar: mvn clean install
probar: mvn clean test; cat target/customReports/result.txtEjemplo 4: Configuración de ejemplo para un proyecto de nodo con un servidor web y múltiples archivos de salida
version: 1.0configuration:
has_webserver: true
scoring:
# Se espera que npm test produzca la salida de prueba en el archivo results/unit.xml.
command: "npm test"
files:
- results/user.xml
- results/project.xml
- results/api.xml
ide_config:
default_open_files:
- app.js
project_menu:
run: npm start
install: npm install
test: npm testEjemplo 5: Configuración de ejemplo para un proyecto de node con archivos de solo lectura
Puede usar archivos de solo lectura para marcar ciertos archivos como casos de prueba de solo lectura. El candidato no podrá modificar estos archivos.
version: 1.0configuration:
has_webserver: true
readonly_paths:
- app/test.js
- app/tests/*
scoring:
command: "npm test"
files:
- results/unit.xml
ide_config:
default_open_files:
- app.js
project_menu:
run: npm start
install: npm install
test: npm test