Ejemplo n.º 1
0
 /**
  * Test scenario failure
  */
 public function testOnScenarioFailure()
 {
     $scenario = new \Magento\TestFramework\Performance\Scenario('Scenario with Error', 'scenario_error.jmx', [], [], []);
     $scenarioOneFailure = $this->throwException(new \Magento\TestFramework\Performance\Scenario\FailureException($scenario));
     $this->_expectScenarioWarmUp('Scenario with Error', 'scenario_error.jmx', 0, $scenarioOneFailure);
     $this->_expectScenarioRun('Scenario with Error', 'scenario_error.jmx', 1, $scenarioOneFailure);
     /* Warm up is disabled for scenario */
     $scenario = new \Magento\TestFramework\Performance\Scenario('Scenario with Failure', 'scenario_failure.jmx', [], [], []);
     $scenarioTwoFailure = $this->throwException(new \Magento\TestFramework\Performance\Scenario\FailureException($scenario));
     $this->_expectScenarioRun('Scenario with Failure', 'scenario_failure.jmx', 2, $scenarioTwoFailure);
     $scenario = new \Magento\TestFramework\Performance\Scenario('Scenario', 'scenario.jmx', [], [], []);
     $scenarioThreeFailure = $this->throwException(new \Magento\TestFramework\Performance\Scenario\FailureException($scenario));
     $this->_expectScenarioWarmUp('Scenario', 'scenario.jmx', 3);
     $this->_expectScenarioRun('Scenario', 'scenario.jmx', 4, $scenarioThreeFailure);
     $notifications = [];
     $this->_object->onScenarioFailure(function (\Magento\TestFramework\Performance\Scenario\FailureException $actualFailure) use(&$notifications) {
         $notifications[] = $actualFailure->getScenario()->getFile();
     });
     $this->_object->run();
     $this->assertEquals(['scenario_error.jmx', 'scenario_failure.jmx', 'scenario.jmx'], $notifications);
 }