Pruebas de SAP: navegación

La navegación de pruebas de SAP garantiza que cubra cada módulo de su sistema SAP y realice al menos una prueba para cada funcionalidad. También reduce el esfuerzo de prueba manual y cubre la mayoría de las rutas de prueba en un sistema SAP.

Se pueden realizar pruebas de OPA para comprobar la navegación de pruebas de SAP. OPA se conoce comoOpen Source Programminglenguaje y se utiliza principalmente para desarrollar aplicaciones web. Para la compilación del programa OPA, puede usar Node.js en el servidor y JavaScript en el lado del cliente.

Crear una prueba usando OPA

OPA le permite utilizar tres objetos en Qunit. Estas funciones deben definirse en una prueba para que OPA sepa qué acciones tomar.

  • Given - pasar arreglos.

  • When - acciones a realizar.

  • Then - afirmación.

Ejemplo

El siguiente ejemplo muestra cómo usar los 3 objetos en Qunit:

jQuery.sap.require("sap.ui.test.Opa");
jQuery.sap.require("sap.ui.test.opaQunit");

opaTest("press a Button", function (Given, When, Then) {
   // Arrangements
   Given.iStartMyApp();
	
   //Actions
   When.iPressOnTheButton();
	
   // Assertions
   Then.theButtonShouldHaveADifferentText();
}

El siguiente paso es definir las tres funciones.

Definiendo las funciones

var arrangements = new sap.ui.test.Opa ({
   iStartMyApp : function (){
      return this.iStartMyAppInAFrame("../index.html");
   }
});

En la función anterior, asumimos que la aplicación se ejecuta en una página llamada index.html. Nuestra prueba OPA se encuentra en la carpeta test / opa.html.

Definición de arreglos

var actions = new sap.ui.test.Opa ({

   iPressOnTheButton : function (){
      return this.waitFor ({
         viewName : "Main", id : "pressMeButton", success : function (oButton) {
            oButton.$().trigger("tap");
         },
         errorMessage : "No Button found"
      });
   }
})

Definición de afirmaciones

var assertions = new sap.ui.test.Opa ({

   theButtonShouldHaveADifferentText : function () {
      return this.waitFor ({
         viewName : "Main",
         id : "pressMeButton",
			
         matchers : new sap.ui.test.matchers.PropertyStrictEquals ({
            name : "text",
            value : "got pressed"
         }),
			
         success : function (oButton) {
            Opa.assert.ok(true, "The button's text changed to: " + oButton.getText());
         },
			
         errorMessage : "No change in Button's text"
      )}
   }
})

Ejecutando la prueba de OPA

sap.ui.test.Opa.extendConfig ({
   arrangements : arrangements,
   actions : actions,
   assertions : assertions,
   viewNamespace : "view."
});