¿Hay una manera que puede valer si es o no es una variable de un tipo determinado?Assert .NET
Tales como:
AssertIsBoolean(variable);
¿Hay una manera que puede valer si es o no es una variable de un tipo determinado?Assert .NET
Tales como:
AssertIsBoolean(variable);
¿Está realmente tratando de afirmar que una variable es de un tipo particular, o que el valor de una variable es de un particular, ¿tipo?
La primera no debería ser parte de una prueba de unidad - que es parte del código declarado. Es como intentar una prueba unitaria que no se puede llamar a un método con tipos de argumento incorrectos.
La segunda fácilmente se puede lograr con
Assert.IsTrue(value is bool);
(Suponiendo value
es una variable de tipo object
o una interfaz.)
Nota que que pondrán a prueba para compatibilidad más que el tipo exacto . Si desea probar que un valor es un tipo exacto, no un subtipo, es posible usar algo como:
Assert.AreEqual(typeof(ArgumentException), ex.GetType());
(Puede haber opciones disponibles para los métodos genéricos en cualquier marco de prueba de unidad que utiliza, por supuesto.)
Creo que significa 'ex.GetType()'. – SLaks
@SLaks: fijos, gracias. –
if(myValue is Boolean)
{
}
Assert.IsTrue(variable is bool, "variable was not a Boolean Value");
no se especifica qué marco se utiliza la prueba. Así que me gustaría mencionar que el marco de pruebas Gallio/MbUnit proporciona una afirmación conveniente para ese mismo propósito:
Assert.IsInstanceOfType<bool>(myValue);
Una variable es del tipo que se ha declarado como, mirar hacia atrás unos pocos líneas en tu código fuente Si ve "objeto", solo entonces comience a considerar las respuestas ofrecidas. –