diff --git a/src/Magento/FunctionalTestingFramework/Test/Objects/TestObject.php b/src/Magento/FunctionalTestingFramework/Test/Objects/TestObject.php index 818e87924..b2e4ee907 100644 --- a/src/Magento/FunctionalTestingFramework/Test/Objects/TestObject.php +++ b/src/Magento/FunctionalTestingFramework/Test/Objects/TestObject.php @@ -88,6 +88,19 @@ public function getFilename() return $this->filename; } + /** + * Getter for the skip_test boolean + * + * @return string + */ + public function isSkipped() + { + if (array_key_exists('group', $this->annotations) && (in_array("skip", $this->annotations['group']))) { + return true; + } + return false; + } + /** * Getter for Codeception format name * diff --git a/src/Magento/FunctionalTestingFramework/Util/TestGenerator.php b/src/Magento/FunctionalTestingFramework/Util/TestGenerator.php index cae931611..e1b15791f 100644 --- a/src/Magento/FunctionalTestingFramework/Util/TestGenerator.php +++ b/src/Magento/FunctionalTestingFramework/Util/TestGenerator.php @@ -1507,10 +1507,15 @@ private function generateTestPhp($test) $testName = str_replace(' ', '', $testName); $testAnnotations = $this->generateAnnotationsPhp($test->getAnnotations(), true); $dependencies = 'AcceptanceTester $I'; - try { - $steps = $this->generateStepsPhp($test->getOrderedActions()); - } catch (TestReferenceException $e) { - throw new TestReferenceException($e->getMessage() . " in Test \"" . $test->getName() . "\""); + if ($test->isSkipped()) { + $steps = "\t\t" . '$scenario->skip("This test is skipped");' . "\n"; + $dependencies .= ', \Codeception\Scenario $scenario'; + } else { + try { + $steps = $this->generateStepsPhp($test->getOrderedActions()); + } catch (TestReferenceException $e) { + throw new TestReferenceException($e->getMessage() . " in Test \"" . $test->getName() . "\""); + } } $testPhp .= $testAnnotations;