sábado, 5 de septiembre de 2015

Tercer avance calculadora científica (pruebas unitarias)

Integrantes:
Sergio Sepúlveda
Juan David Franco
Sthefany Blanco

Para el tercer avance de nuestra calculadora científica, realizaremos pruebas unitarias a algunos métodos  de nuestra calculadora, estos serán:

CalculadoraNaturales.SumaNatural (flujo normal de eventos y flujo alterno donde se arroja la excepción system exception debido a que se ingresó uno o dos números negativos)

CalculadoraEnteros.MultiplicacionEntero (flujo normal de eventos)

CalculadoraRacionales.DivisionRacional  (flujo normal de eventos y flujo alterno donde se arroja la excepción DivideByZeroException debido a que el denominador es igual a 0)

CalculadoraReales.PorcentajeReal(flujo normal de eventos)

CalculadoraImaginarios.EcuacionCuadraticaComplejo (flujo normal de eventos y flujo alterno donde se arroja la excepción SystemException debido a que el valor cuadratico es igual a 0)

Código fuente de las pruebas

Calculadora naturales

using Calculadora;
using Microsoft.VisualStudio.TestTools.UnitTesting;
using System;

namespace PruebasUnitarias
{


    /// <summary>
    ///Se trata de una clase de prueba para CalculadoraNaturalesTest y se pretende que
    ///contenga todas las pruebas unitarias CalculadoraNaturalesTest.
    ///</summary>
    [TestClass()]
    public class CalculadoraNaturalesTest
    {


        private TestContext testContextInstance;

        /// <summary>
        ///Obtiene o establece el contexto de la prueba que proporciona
        ///la información y funcionalidad para la ejecución de pruebas actual.
        ///</summary>
        public TestContext TestContext
        {
            get
            {
                return testContextInstance;
            }
            set
            {
                testContextInstance = value;
            }
        }

       
        /// <summary>
        ///Una prueba de SumaNatural
        ///</summary>
        [TestMethod()]
        ///[ExpectedException(typeof(SystemException))]
        ///esta linea es para hacer pruebas con excepciones
        public void SumaNaturalTest()
        {
            int x = 47;
            int y = 3;
            int expected = 50; // TODO: Inicializar en un valor adecuado
            int actual;
            actual = CalculadoraNaturales.SumaNatural(x, y);
            Assert.AreEqual(expected, actual);
        }

        /// <summary>
        ///Una prueba de SumaNatural
        ///</summary>
        [TestMethod()]
        [ExpectedException(typeof(SystemException))]
        public void SumaNaturalTest2()
        {
            int x = 47;
            int y = -3;
            CalculadoraNaturales.SumaNatural(x, y);
        }
    }
}

Calculadora enteros

using Calculadora;
using Microsoft.VisualStudio.TestTools.UnitTesting;
using System;

namespace PruebasUnitarias
{


    /// <summary>
    ///Se trata de una clase de prueba para CalculadoraEnterosTest y se pretende que
    ///contenga todas las pruebas unitarias CalculadoraEnterosTest.
    ///</summary>
    [TestClass()]
    public class CalculadoraEnterosTest
    {


        private TestContext testContextInstance;

        /// <summary>
        ///Obtiene o establece el contexto de la prueba que proporciona
        ///la información y funcionalidad para la ejecución de pruebas actual.
        ///</summary>
        public TestContext TestContext
        {
            get
            {
                return testContextInstance;
            }
            set
            {
                testContextInstance = value;
            }
        }

       
        /// <summary>
        ///Una prueba de MultiplicacionEntero
        ///</summary>
        [TestMethod()]
        ///[ExpectedException(typeof(SystemException))]
        ///esta linea es para hacer pruebas con excepciones
        public void MultiplicacionEnteroTest()
        {
            int x = 4;
            int y = 3;
            int expected = 12; // TODO: Inicializar en un valor adecuado
            int actual;
            actual = CalculadoraEnteros.MultiplicacionEntero(x, y);
            Assert.AreEqual(expected, actual);
        }
    }
}

Calculadora Racionales

using Calculadora;
using Microsoft.VisualStudio.TestTools.UnitTesting;
using System;

namespace PruebasUnitarias
{


    /// <summary>
    ///Se trata de una clase de prueba para CalculadoraRacionalesTest y se pretende que
    ///contenga todas las pruebas unitarias CalculadoraRacionalesTest.
    ///</summary>
    [TestClass()]
    public class CalculadoraRacionalesTest
    {


        private TestContext testContextInstance;

        /// <summary>
        ///Obtiene o establece el contexto de la prueba que proporciona
        ///la información y funcionalidad para la ejecución de pruebas actual.
        ///</summary>
        public TestContext TestContext
        {
            get
            {
                return testContextInstance;
            }
            set
            {
                testContextInstance = value;
            }
        }

        /// <summary>
        ///Una prueba de DivisionRacional
        ///</summary>
        [TestMethod()]
        ///[ExpectedException(typeof(SystemException))]
        ///esta linea es para hacer pruebas con excepciones
        public void DivisionRacionalTest()
        {
            double x = 1;
            double y = 2;
            double expected = 0.5; // TODO: Inicializar en un valor adecuado
            double actual;
            actual = CalculadoraRacionales.DivisionRacional(x, y);
            Assert.AreEqual(expected, actual);
        }

        /// <summary>
        ///Una prueba de SumaNatural
        ///</summary>
        [TestMethod()]
        [ExpectedException(typeof(DivideByZeroException))]
        public void DivisionRacionalTest2()
        {
            double x = 4;
            double y = 0;
            CalculadoraRacionales.DivisionRacional(x, y);
        }
    }
}

Calculadora Reales
using Calculadora;
using Microsoft.VisualStudio.TestTools.UnitTesting;
using System;

namespace PruebasUnitarias
{


    /// <summary>
    ///Se trata de una clase de prueba para CalculadoraRealesTest y se pretende que
    ///contenga todas las pruebas unitarias CalculadoraRealessTest.
    ///</summary>
    [TestClass()]
    public class CalculadoraRealesTest
    {


        private TestContext testContextInstance;

        /// <summary>
        ///Obtiene o establece el contexto de la prueba que proporciona
        ///la información y funcionalidad para la ejecución de pruebas actual.
        ///</summary>
        public TestContext TestContext
        {
            get
            {
                return testContextInstance;
            }
            set
            {
                testContextInstance = value;
            }
        }

        /// <summary>
        ///Una prueba de PorcentajeReal
        ///</summary>
        [TestMethod()]
        ///[ExpectedException(typeof(SystemException))]
        ///esta linea es para hacer pruebas con excepciones
        public void PorcentajeRealTest()
        {
            Double x = 26;
            Double y = 44;
            Double expected = 11.44; // TODO: Inicializar en un valor adecuado
            Double actual;
            actual = CalculadoraReales.PorcentajeReal(x, y);
            Assert.AreEqual(expected, actual);
        }


    }
}

Calculadora Complejos

using Calculadora;
using Microsoft.VisualStudio.TestTools.UnitTesting;
using System;

namespace PruebasUnitarias
{


    /// <summary>
    ///Se trata de una clase de prueba para CalculadoraComplejosTest y se pretende que
    ///contenga todas las pruebas unitarias CalculadoraComplejosTest.
    ///</summary>
    [TestClass()]
    public class CalculadoraComplejosTest
    {
        /// <summary>
        ///Una prueba de EcuacionCuadraticaComplejos
        ///</summary>
        [TestMethod()]
        public void EcuacionCuadraticaComplejoTest()
        {
            Double x = 1;
            Double y = 1;
            Double z = 1;
            String expected = "Resultado 1: -0,5+0,866025403784439i\nResultado 2: -0,5-0,866025403784439i"; // TODO: Inicializar en un valor adecuado
            String actual;
            actual = CalculadoraComplejos.EcuacionCuadraticaComplejo(x, y, z);
            Assert.AreEqual(expected, actual);
        }

        /// <summary>
        ///Una prueba de EcuacionCuadraticaComplejos
        ///</summary>
        [TestMethod()]
        [ExpectedException(typeof(SystemException))]
        public void EcuacionCuadraticaComplejoTest2()
        {
            double x = 0;
            double y = 1;
            double z = 2;
            CalculadoraComplejos.EcuacionCuadraticaComplejo(x, y,z);
        }
    }
}

Proyecto:

No hay comentarios:

Publicar un comentario