SAP Testing - Навигация

Навигация по тестированию SAP гарантирует, что вы охватите каждый модуль своей системы SAP и выполните хотя бы один тест для каждой функции. Это также сокращает объем ручного тестирования и охватывает большинство путей тестирования в системе SAP.

OPA-тесты могут быть выполнены для проверки SAP Testing Navigation. OPA известен какOpen Source Programmingязык, и он в основном используется для разработки веб-приложений. Для компиляции программы OPA вы можете использовать Node.js на сервере и JavaScript на стороне клиента.

Создание теста с использованием OPA

OPA позволяет использовать три объекта в Qunit. Эти функции должны быть определены в тесте, чтобы OPA знал, какие действия необходимо предпринять.

  • Given - пройти договоренности.

  • When - действия, которые необходимо предпринять.

  • Then - утверждение.

пример

В следующем примере показано, как использовать все 3 объекта в 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();
}

Следующим шагом является определение трех функций.

Определение функций

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

В приведенной выше функции мы предположили, что приложение работает на странице с именем index.html. Наш тест OPA находится в папке test / opa.html.

Определение договоренностей

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"
      });
   }
})

Определение утверждений

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"
      )}
   }
})

Запуск теста OPA

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