🧪 Descripción
Realizar pruebas exhaustivas de toda la funcionalidad de la GUI y crear archivo de tests unitarios test_gui_calculator.py para la interfaz gráfica.
Objetivo:
Probar manualmente cada funcionalidad de la calculadora GUI, documentar bugs encontrados y crear tests automatizados para la GUI.
📋 Tareas
🧪 Casos de prueba a ejecutar manualmente
Operaciones básicas:
Operaciones con decimales:
Funciones científicas:
Manejo de errores:
Flujos de usuario:
💻 Estructura de test_gui_calculator.py
"""Tests para la interfaz gráfica de la calculadora.
Pruebas usando pytest para verificar funcionalidad de GUI.
Para correr los tests: pytest test_gui_calculator.py -v
"""
import pytest
import tkinter as tk
from gui import CalculatorGUI
def test_button_click():
"""Test de clicks en botones numéricos."""
root = tk.Tk()
calc = CalculatorGUI(root)
calc.button_click('5')
assert calc.current_value == '5'
calc.button_click('3')
assert calc.current_value == '53'
root.destroy()
def test_clear():
"""Test de botón clear."""
root = tk.Tk()
calc = CalculatorGUI(root)
calc.button_click('5')
calc.clear_click()
assert calc.current_value == ''
assert calc.operator is None
root.destroy()
def test_operations():
"""Test de operaciones básicas."""
root = tk.Tk()
calc = CalculatorGUI(root)
# Test suma: 5 + 3 = 8
calc.button_click('5')
calc.operation_click('+')
calc.button_click('3')
calc.equals_click()
assert calc.current_value == '8'
root.destroy()
# Agregar más tests según sea necesario
📝 Plantilla de reporte de bug
Si encuentras bugs, créalos como issues usando este formato:
## Bug: [Descripción breve]
**Pasos para reproducir:**
1. Hacer click en...
2. Ingresar...
3. Presionar...
**Resultado esperado:**
[Qué debería pasar]
**Resultado actual:**
[Qué está pasando]
**Severidad:** [Crítica/Alta/Media/Baja]
🧪 Descripción
Realizar pruebas exhaustivas de toda la funcionalidad de la GUI y crear archivo de tests unitarios
test_gui_calculator.pypara la interfaz gráfica.Objetivo:
Probar manualmente cada funcionalidad de la calculadora GUI, documentar bugs encontrados y crear tests automatizados para la GUI.
📋 Tareas
python gui.pytest_gui_calculator.pycon tests automatizadospytest🧪 Casos de prueba a ejecutar manualmente
Operaciones básicas:
5 + 3 = 810 - 4 = 67 * 6 = 4215 / 3 = 52 ^ 3 = 8Operaciones con decimales:
5.5 + 2.3 = 7.810.5 / 2 = 5.25Funciones científicas:
abs(-5) = 5max(10, 20) = 20min(10, 20) = 10Manejo de errores:
Flujos de usuario:
5 + 3 = 8 * 2 = 16💻 Estructura de test_gui_calculator.py
📝 Plantilla de reporte de bug
Si encuentras bugs, créalos como issues usando este formato: