He estado probando el AngularJS e2e tests y me estoy atascando al determinar si se marca o no una casilla de verificación.¿Cómo validar cuándo se marca una casilla de verificación en las pruebas AngularJS e2e?
I utilizaron el extremo a extremo de prueba para la checkbox input como una muestra (ver el Fin para terminar pestaña prueba en el Ejemplo).
código HTML:
Value1: <input type="checkbox" ng-model="value1"> <br/>
controlador fragmento:
function Ctrl($scope) {
$scope.value1 = true;
}
Aquí es lo que he intentado:
1) expect(binding('value1')).toEqual('true');
Esto funciona en la prueba de extremo a extremo de la muestra, siempre que value1
se muestre en la pantalla con {{value1}}
. Si prueba esto localmente y elimina `{{value1}} la prueba de enlace falla. En la mayoría de mis ejemplos del mundo real, no estoy mostrando el valor de la casilla en ninguna parte.
2) expect(input('value1').val()).toEqual('true');
El valor siempre será por defecto on
y no está relacionada a si o no la casilla de verificación se encuentra en un estado activado (tomado de this post).
Nota: Parece que la prueba de E2E angular será reemplazado por Protractor en el futuro (ver the docs)
Gracias! Me gusta más de lo que estoy haciendo actualmente. Mantendré abierta esta pregunta solo en caso de que haya una mejor manera :) – Gloopy
En karma, no se debe usar 'attr' sino' prop'.Para compañeros googlers. – Offirmo