Día 16 - Build y Testing Básico
🧪 Build y Tests Automáticos con GitHub Actions
"La mejor forma de saber si algo funciona… ¡es testearlo automáticamente!"
Hoy vas a ver cómo construir y testear tu aplicación automáticamente cada vez que hacés un cambio. Vas a preparar una app en Python con Flask, escribirle tests, y crear un workflow que la pruebe solo.
🐍 Paso 1: Crear tu app Python simple
mkdir mi-app-python
cd mi-app-python
mkdir tests
touch app.py requirements.txt tests/test_app.py
Código base de app.py
:
from flask import Flask, jsonify
import datetime
app = Flask(__name__)
@app.route('/')
def home():
return jsonify({
'message': '¡Hola DevOps con Roxs!',
'timestamp': datetime.datetime.now().isoformat(),
'status': 'success'
})
@app.route('/health')
def health():
return jsonify({'status': 'healthy', 'uptime': 'running'})
@app.route('/suma/<int:a>/<int:b>')
def suma(a, b):
return jsonify({
'operacion': 'suma',
'numeros': [a, b],
'resultado': a + b
})
@app.route('/saludo/<nombre>')
def saludo(nombre):
return jsonify({
'saludo': f'¡Hola {nombre}!',
'mensaje': 'Bienvenido a mi aplicación'
})
# Funciones para test
def multiplicar(a, b): return a * b
def es_par(n): return n % 2 == 0
if __name__ == '__main__':
app.run(debug=True, host='0.0.0.0', port=5000)