Skip to content

Commit 6a94c87

Browse files
committed
MQE-980: [Annotations] <features> tag defaults to module
- Dom no longer overwrites filename, instead builds comma separated list to keep track of all test and merge paths - TestObjectExtractor not extracts module form base test path, and overwrites testAnnotations["features"] to only include the single module name. - Unit/Verification updates.
1 parent fb1e4b7 commit 6a94c87

36 files changed

+112
-13
lines changed

dev/tests/unit/Magento/FunctionalTestFramework/Test/Handlers/TestObjectHandlerTest.php

+10
Original file line numberDiff line numberDiff line change
@@ -88,6 +88,7 @@ public function testGetTestObject()
8888
$testDataArrayBuilder->testName,
8989
[$expectedTestActionObject],
9090
[
91+
'features' => ['NO MODULE DETECTED'],
9192
'group' => ['test']
9293
],
9394
[
@@ -101,6 +102,15 @@ public function testGetTestObject()
101102
$this->assertEquals($expectedTestObject, $actualTestObject);
102103
}
103104

105+
/**
106+
* Tests basic getting of a test that has a fileName
107+
*/
108+
public function testGetTestWithFileName()
109+
{
110+
$this->markTestIncomplete();
111+
//TODO
112+
}
113+
104114
/**
105115
* Tests the function used to get a series of relevant tests by group.
106116
*

dev/tests/unit/Util/TestDataArrayBuilder.php

+27-1
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
namespace tests\unit\Util;
88

99
use Magento\FunctionalTestingFramework\Test\Util\ActionObjectExtractor;
10+
use Magento\FunctionalTestingFramework\Test\Util\AnnotationExtractor;
1011
use Magento\FunctionalTestingFramework\Test\Util\TestObjectExtractor;
1112

1213
class TestDataArrayBuilder
@@ -18,6 +19,13 @@ class TestDataArrayBuilder
1819
*/
1920
public $testName = 'testTest';
2021

22+
/**
23+
* Mock file name
24+
*
25+
* @var string
26+
*/
27+
public $filename = null;
28+
2129
/**
2230
* Mock before action name
2331
*
@@ -187,6 +195,23 @@ public function withTestActions($actions = null)
187195
return $this;
188196
}
189197

198+
/**
199+
* Add file name passe in by arg (or default if no arg)
200+
* @param string $filename
201+
* @return $this
202+
*/
203+
public function withFileName($filename = null)
204+
{
205+
if ($filename == null) {
206+
$this->filename =
207+
"/magento2-functional-testing-framework/dev/tests/verification/TestModule/Test/BasicFunctionalTest.xml";
208+
} else {
209+
$this->filename = $filename;
210+
}
211+
212+
return $this;
213+
}
214+
190215
/**
191216
* Output the resulting test data array based on parameters set in the object
192217
*
@@ -201,7 +226,8 @@ public function build()
201226
TestObjectExtractor::TEST_ANNOTATIONS => $this->annotations,
202227
TestObjectExtractor::TEST_BEFORE_HOOK => $this->beforeHook,
203228
TestObjectExtractor::TEST_AFTER_HOOK => $this->afterHook,
204-
TestObjectExtractor::TEST_FAILED_HOOK => $this->failedHook
229+
TestObjectExtractor::TEST_FAILED_HOOK => $this->failedHook,
230+
"filename" => $this->filename
205231
],
206232
$this->testActions
207233
)];

dev/tests/verification/Resources/ActionGroupUsingNestedArgument.txt

+1
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@ use Yandex\Allure\Adapter\Annotation\TestCaseId;
2020
class ActionGroupUsingNestedArgumentCest
2121
{
2222
/**
23+
* @Features({"TestModule"})
2324
* @Parameter(name = "AcceptanceTester", value="$I")
2425
* @param AcceptanceTester $I
2526
* @return void

dev/tests/verification/Resources/ActionGroupWithDataOverrideTest.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,7 @@ class ActionGroupWithDataOverrideTestCest
6161

6262
/**
6363
* @Severity(level = SeverityLevel::CRITICAL)
64-
* @Features({"Action Group Functional Cest"})
64+
* @Features({"TestModule"})
6565
* @Stories({"MQE-433"})
6666
* @Parameter(name = "AcceptanceTester", value="$I")
6767
* @param AcceptanceTester $I

dev/tests/verification/Resources/ActionGroupWithDataTest.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,7 @@ class ActionGroupWithDataTestCest
6161

6262
/**
6363
* @Severity(level = SeverityLevel::CRITICAL)
64-
* @Features({"Action Group Functional Cest"})
64+
* @Features({"TestModule"})
6565
* @Stories({"MQE-433"})
6666
* @Parameter(name = "AcceptanceTester", value="$I")
6767
* @param AcceptanceTester $I

dev/tests/verification/Resources/ActionGroupWithDefaultArgumentAndStringSelectorParam.txt

+1
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ class ActionGroupWithDefaultArgumentAndStringSelectorParamCest
2222
{
2323
/**
2424
* @Severity(level = SeverityLevel::BLOCKER)
25+
* @Features({"TestModule"})
2526
* @Parameter(name = "AcceptanceTester", value="$I")
2627
* @param AcceptanceTester $I
2728
* @return void

dev/tests/verification/Resources/ActionGroupWithMultipleParameterSelectorsFromDefaultArgument.txt

+1
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ class ActionGroupWithMultipleParameterSelectorsFromDefaultArgumentCest
2222
{
2323
/**
2424
* @Severity(level = SeverityLevel::BLOCKER)
25+
* @Features({"TestModule"})
2526
* @Parameter(name = "AcceptanceTester", value="$I")
2627
* @param AcceptanceTester $I
2728
* @return void

dev/tests/verification/Resources/ActionGroupWithNoArguments.txt

+1
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ class ActionGroupWithNoArgumentsCest
2222
{
2323
/**
2424
* @Severity(level = SeverityLevel::BLOCKER)
25+
* @Features({"TestModule"})
2526
* @Parameter(name = "AcceptanceTester", value="$I")
2627
* @param AcceptanceTester $I
2728
* @return void

dev/tests/verification/Resources/ActionGroupWithNoDefaultTest.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,7 @@ class ActionGroupWithNoDefaultTestCest
6161

6262
/**
6363
* @Severity(level = SeverityLevel::CRITICAL)
64-
* @Features({"Action Group Functional Cest"})
64+
* @Features({"TestModule"})
6565
* @Stories({"MQE-433"})
6666
* @Parameter(name = "AcceptanceTester", value="$I")
6767
* @param AcceptanceTester $I

dev/tests/verification/Resources/ActionGroupWithPassedArgumentAndStringSelectorParam.txt

+1
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ class ActionGroupWithPassedArgumentAndStringSelectorParamCest
2222
{
2323
/**
2424
* @Severity(level = SeverityLevel::BLOCKER)
25+
* @Features({"TestModule"})
2526
* @Parameter(name = "AcceptanceTester", value="$I")
2627
* @param AcceptanceTester $I
2728
* @return void

dev/tests/verification/Resources/ActionGroupWithPersistedData.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,7 @@ class ActionGroupWithPersistedDataCest
6161

6262
/**
6363
* @Severity(level = SeverityLevel::CRITICAL)
64-
* @Features({"Action Group Functional Cest"})
64+
* @Features({"TestModule"})
6565
* @Stories({"MQE-433"})
6666
* @Parameter(name = "AcceptanceTester", value="$I")
6767
* @param AcceptanceTester $I

dev/tests/verification/Resources/ActionGroupWithSimpleDataUsageFromDefaultArgument.txt

+1
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ class ActionGroupWithSimpleDataUsageFromDefaultArgumentCest
2222
{
2323
/**
2424
* @Severity(level = SeverityLevel::CRITICAL)
25+
* @Features({"TestModule"})
2526
* @Parameter(name = "AcceptanceTester", value="$I")
2627
* @param AcceptanceTester $I
2728
* @return void

dev/tests/verification/Resources/ActionGroupWithSimpleDataUsageFromPassedArgument.txt

+1
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ class ActionGroupWithSimpleDataUsageFromPassedArgumentCest
2222
{
2323
/**
2424
* @Severity(level = SeverityLevel::CRITICAL)
25+
* @Features({"TestModule"})
2526
* @Parameter(name = "AcceptanceTester", value="$I")
2627
* @param AcceptanceTester $I
2728
* @return void

dev/tests/verification/Resources/ActionGroupWithSingleParameterSelectorFromDefaultArgument.txt

+1
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ class ActionGroupWithSingleParameterSelectorFromDefaultArgumentCest
2222
{
2323
/**
2424
* @Severity(level = SeverityLevel::BLOCKER)
25+
* @Features({"TestModule"})
2526
* @Parameter(name = "AcceptanceTester", value="$I")
2627
* @param AcceptanceTester $I
2728
* @return void

dev/tests/verification/Resources/ActionGroupWithSingleParameterSelectorFromPassedArgument.txt

+1
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ class ActionGroupWithSingleParameterSelectorFromPassedArgumentCest
2222
{
2323
/**
2424
* @Severity(level = SeverityLevel::BLOCKER)
25+
* @Features({"TestModule"})
2526
* @Parameter(name = "AcceptanceTester", value="$I")
2627
* @param AcceptanceTester $I
2728
* @return void

dev/tests/verification/Resources/ActionGroupWithStepKeyReferences.txt

+1
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@ use Yandex\Allure\Adapter\Annotation\TestCaseId;
2020
class ActionGroupWithStepKeyReferencesCest
2121
{
2222
/**
23+
* @Features({"TestModule"})
2324
* @Parameter(name = "AcceptanceTester", value="$I")
2425
* @param AcceptanceTester $I
2526
* @return void

dev/tests/verification/Resources/ActionGroupWithTopLevelPersistedData.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,7 @@ class ActionGroupWithTopLevelPersistedDataCest
6161

6262
/**
6363
* @Severity(level = SeverityLevel::CRITICAL)
64-
* @Features({"Action Group Functional Cest"})
64+
* @Features({"TestModule"})
6565
* @Stories({"MQE-433"})
6666
* @Parameter(name = "AcceptanceTester", value="$I")
6767
* @param AcceptanceTester $I

dev/tests/verification/Resources/ArgumentWithSameNameAsElement.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,7 @@ class ArgumentWithSameNameAsElementCest
6161

6262
/**
6363
* @Severity(level = SeverityLevel::CRITICAL)
64-
* @Features({"Action Group Functional Cest"})
64+
* @Features({"TestModule"})
6565
* @Stories({"MQE-433"})
6666
* @Parameter(name = "AcceptanceTester", value="$I")
6767
* @param AcceptanceTester $I

dev/tests/verification/Resources/AssertTest.txt

+1
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,7 @@ class AssertTestCest
3737
}
3838

3939
/**
40+
* @Features({"TestModule"})
4041
* @Parameter(name = "AcceptanceTester", value="$I")
4142
* @param AcceptanceTester $I
4243
* @return void

dev/tests/verification/Resources/BasicActionGroupTest.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ class BasicActionGroupTestCest
4242

4343
/**
4444
* @Severity(level = SeverityLevel::CRITICAL)
45-
* @Features({"Action Group Functional Cest"})
45+
* @Features({"TestModule"})
4646
* @Stories({"MQE-433"})
4747
* @Parameter(name = "AcceptanceTester", value="$I")
4848
* @param AcceptanceTester $I

dev/tests/verification/Resources/BasicFunctionalTest.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@ class BasicFunctionalTestCest
5050

5151
/**
5252
* @Severity(level = SeverityLevel::CRITICAL)
53-
* @Features({"Basic Functional Cest"})
53+
* @Features({"TestModule"})
5454
* @Stories({"MQE-305"})
5555
* @Parameter(name = "AcceptanceTester", value="$I")
5656
* @param AcceptanceTester $I

dev/tests/verification/Resources/BasicMergeTest.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,7 @@ class BasicMergeTestCest
5252

5353
/**
5454
* @Severity(level = SeverityLevel::CRITICAL)
55-
* @Features({"Merge Functional Cest"})
55+
* @Features({"TestModule"})
5656
* @Stories({"MQE-433"})
5757
* @Parameter(name = "AcceptanceTester", value="$I")
5858
* @param AcceptanceTester $I

dev/tests/verification/Resources/CharacterReplacementTest.txt

+1
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@ use Yandex\Allure\Adapter\Annotation\TestCaseId;
2020
class CharacterReplacementTestCest
2121
{
2222
/**
23+
* @Features({"TestModule"})
2324
* @Parameter(name = "AcceptanceTester", value="$I")
2425
* @param AcceptanceTester $I
2526
* @return void

dev/tests/verification/Resources/DataReplacementTest.txt

+1
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@ use Yandex\Allure\Adapter\Annotation\TestCaseId;
2020
class DataReplacementTestCest
2121
{
2222
/**
23+
* @Features({"TestModule"})
2324
* @Parameter(name = "AcceptanceTester", value="$I")
2425
* @param AcceptanceTester $I
2526
* @return void

dev/tests/verification/Resources/HookActionsTest.txt

+1
Original file line numberDiff line numberDiff line change
@@ -76,6 +76,7 @@ class HookActionsTestCest
7676
}
7777

7878
/**
79+
* @Features({"TestModule"})
7980
* @Parameter(name = "AcceptanceTester", value="$I")
8081
* @param AcceptanceTester $I
8182
* @return void

dev/tests/verification/Resources/LocatorFunctionTest.txt

+1
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@ use Yandex\Allure\Adapter\Annotation\TestCaseId;
2020
class LocatorFunctionTestCest
2121
{
2222
/**
23+
* @Features({"TestModule"})
2324
* @Parameter(name = "AcceptanceTester", value="$I")
2425
* @param AcceptanceTester $I
2526
* @return void

dev/tests/verification/Resources/MergedActionGroupTest.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,7 @@ class MergedActionGroupTestCest
6161

6262
/**
6363
* @Severity(level = SeverityLevel::CRITICAL)
64-
* @Features({"Action Group Functional Cest"})
64+
* @Features({"TestModule"})
6565
* @Stories({"MQE-433"})
6666
* @Parameter(name = "AcceptanceTester", value="$I")
6767
* @param AcceptanceTester $I

dev/tests/verification/Resources/MergedReferencesTest.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@ class MergedReferencesTestCest
5050

5151
/**
5252
* @Severity(level = SeverityLevel::CRITICAL)
53-
* @Features({"Merge Functional Cest"})
53+
* @Features({"TestModule"})
5454
* @Stories({"MQE-433"})
5555
* @Parameter(name = "AcceptanceTester", value="$I")
5656
* @param AcceptanceTester $I

dev/tests/verification/Resources/MultipleActionGroupsTest.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,7 @@ class MultipleActionGroupsTestCest
6161

6262
/**
6363
* @Severity(level = SeverityLevel::CRITICAL)
64-
* @Features({"Action Group Functional Cest"})
64+
* @Features({"TestModule"})
6565
* @Stories({"MQE-433"})
6666
* @Parameter(name = "AcceptanceTester", value="$I")
6767
* @param AcceptanceTester $I

dev/tests/verification/Resources/PageReplacementTest.txt

+1
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@ use Yandex\Allure\Adapter\Annotation\TestCaseId;
2020
class PageReplacementTestCest
2121
{
2222
/**
23+
* @Features({"TestModule"})
2324
* @Parameter(name = "AcceptanceTester", value="$I")
2425
* @param AcceptanceTester $I
2526
* @return void

dev/tests/verification/Resources/ParameterArrayTest.txt

+1
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@ use Yandex\Allure\Adapter\Annotation\TestCaseId;
2020
class ParameterArrayTestCest
2121
{
2222
/**
23+
* @Features({"TestModule"})
2324
* @Parameter(name = "AcceptanceTester", value="$I")
2425
* @param AcceptanceTester $I
2526
* @return void

dev/tests/verification/Resources/PersistedReplacementTest.txt

+1
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,7 @@ class PersistedReplacementTestCest
3737
}
3838

3939
/**
40+
* @Features({"TestModule"})
4041
* @Parameter(name = "AcceptanceTester", value="$I")
4142
* @param AcceptanceTester $I
4243
* @return void

dev/tests/verification/Resources/PersistenceCustomFieldsTest.txt

+1
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,7 @@ class PersistenceCustomFieldsTestCest
4949
}
5050

5151
/**
52+
* @Features({"TestModule"})
5253
* @Parameter(name = "AcceptanceTester", value="$I")
5354
* @param AcceptanceTester $I
5455
* @return void

dev/tests/verification/Resources/SectionReplacementTest.txt

+1
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@ use Yandex\Allure\Adapter\Annotation\TestCaseId;
2020
class SectionReplacementTestCest
2121
{
2222
/**
23+
* @Features({"TestModule"})
2324
* @Parameter(name = "AcceptanceTester", value="$I")
2425
* @param AcceptanceTester $I
2526
* @return void

src/Magento/FunctionalTestingFramework/Config/Dom.php

+8
Original file line numberDiff line numberDiff line change
@@ -215,6 +215,14 @@ protected function isTextNode($node)
215215
protected function mergeAttributes($baseNode, $mergeNode)
216216
{
217217
foreach ($mergeNode->attributes as $attribute) {
218+
// Do not overwrite filename of base node
219+
if ($attribute->name === "filename") {
220+
$baseNode->setAttribute(
221+
$this->getAttributeName($attribute),
222+
$baseNode->getAttribute("filename") . "," . $attribute->value
223+
);
224+
continue;
225+
}
218226
$baseNode->setAttribute($this->getAttributeName($attribute), $attribute->value);
219227
}
220228
}

0 commit comments

Comments
 (0)