Skip to content

Commit 2a33f03

Browse files
committed
#702: Automate MC-3317, MC-15481, MC-15482
- Rewriting MFTF tests
1 parent f215b1f commit 2a33f03

File tree

9 files changed

+987
-591
lines changed

9 files changed

+987
-591
lines changed

app/code/Magento/PageBuilder/Test/Mftf/Data/HeadingData.xml

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -86,34 +86,34 @@
8686
<data key="fieldName">heading_text</data>
8787
<data key="value"> nbsp nbsp </data>
8888
</entity>
89-
<entity name="PageBuilderHeadingTextSample1" type="pagebuilder_heading_text_property">
89+
<entity name="PageBuilderHeadingText_Description" type="pagebuilder_heading_text_property">
9090
<data key="name">Heading Text</data>
9191
<data key="section">general</data>
9292
<data key="fieldName">heading_text</data>
9393
<data key="value">Description</data>
9494
</entity>
95-
<entity name="PageBuilderHeadingTextSample2" type="pagebuilder_heading_text_property">
95+
<entity name="PageBuilderHeadingText_ShortDescription" type="pagebuilder_heading_text_property">
9696
<data key="name">Heading Text</data>
9797
<data key="section">general</data>
9898
<data key="fieldName">heading_text</data>
9999
<data key="value">Short Description</data>
100100
</entity>
101-
<entity name="PageBuilderHeadingTextSample3" type="pagebuilder_heading_text_property">
101+
<entity name="PageBuilderHeadingText_CustomAttribute" type="pagebuilder_heading_text_property">
102102
<data key="name">Heading Text</data>
103103
<data key="section">general</data>
104104
<data key="fieldName">heading_text</data>
105105
<data key="value">Custom Page Builder Attribute</data>
106106
</entity>
107-
<entity name="PageBuilderHeadingTextSample4" type="pagebuilder_heading_text_property">
107+
<entity name="PageBuilderHeadingText_PageContent" type="pagebuilder_heading_text_property">
108108
<data key="name">Heading Text</data>
109109
<data key="section">general</data>
110110
<data key="fieldName">heading_text</data>
111111
<data key="value">Page Content</data>
112112
</entity>
113-
<entity name="PageBuilderHeadingTextSample5" type="pagebuilder_heading_text_property">
113+
<entity name="PageBuilderHeadingText_CMSBlock" type="pagebuilder_heading_text_property">
114114
<data key="name">Heading Text</data>
115115
<data key="section">general</data>
116116
<data key="fieldName">heading_text</data>
117-
<data key="value">CMSBlock</data>
117+
<data key="value">CMS Block</data>
118118
</entity>
119119
</entities>

app/code/Magento/PageBuilder/Test/Mftf/Data/ProductAttributeData.xml

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,9 +9,21 @@
99
<entities xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
1010
xsi:noNamespaceSchemaLocation="urn:magento:mftf:DataGenerator/etc/dataProfileSchema.xsd">
1111
<entity name="productAttributePageBuilder" extends="productAttributeWysiwyg" type="ProductAttribute">
12+
<data key="frontend_label">Page Builder Attribute</data>
1213
<data key="attribute_code" unique="suffix">page_builder_attribute</data>
1314
<data key="frontend_input_admin">Page Builder</data>
14-
<data key="is_used_in_grid">false</data>
15-
<data key="frontend_label">Page Builder Attribute</data>
15+
<data key="is_searchable">false</data>
16+
<data key="is_comparable">false</data>
17+
<data key="is_filterable">false</data>
18+
<data key="is_filterable_in_search">false</data>
19+
<data key="is_used_for_promo_rules">false</data>
20+
<data key="used_in_product_listing">false</data>
21+
<data key="used_for_sort_by">false</data>
22+
<data key="is_html_allowed_on_front">true</data>
23+
<data key="is_pagebuilder_enabled">true</data>
24+
</entity>
25+
<entity name="AddToDefaultSet_ContentGroup" type="ProductAttributeSet" extends="AddToDefaultSet">
26+
<data key="attributeGroupId">13</data>
27+
<data key="sortOrder">2</data>
1628
</entity>
1729
</entities>

app/code/Magento/PageBuilder/Test/Mftf/Section/PageBuilderCatalogSection/StorefrontCategoryMainSection.xml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,12 @@
1212
<element name="CatalogDescription" type="text" selector="//div[@class='category-description']"/>
1313
<element name="DataAppearanceRow" type="text" selector="div.category-description > [data-appearance='{{appearance}}']" parameterized="true"/>
1414
<!-- Category Contents -->
15+
<element name="categoryTitleWrapper" type="button" selector=".page-title-wrapper"/>
1516
<element name="categoryImage" type="button" selector=".category-image"/>
1617
<element name="categoryDescription" type="text" selector=".category-description"/>
1718
<element name="categoryCMS" type="text" selector=".category-cms"/>
19+
<element name="productGrid" type="block" selector="#maincontent .column.main"/>
20+
<element name="sidebarFilters" type="block" selector="#maincontent .sidebar.sidebar-main"/>
21+
<element name="sidebarAdditional" type="block" selector="#maincontent .sidebar.sidebar-additional"/>
1822
</section>
1923
</sections>

app/code/Magento/PageBuilder/Test/Mftf/Section/PageBuilderCatalogSection/StorefrontProductFullWidthSection.xml

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -8,14 +8,19 @@
88
<sections xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
99
xsi:noNamespaceSchemaLocation="urn:magento:mftf:Page/etc/SectionObject.xsd">
1010
<section name="StorefrontProductFullWidth">
11+
<element name="title" type="text" selector="[data-ui-id=page-title-wrapper]"/>
12+
<element name="reviewsSummary" type="text" selector=".product-reviews-summary"/>
13+
<element name="priceInfoForm" type="text" selector=".product-info-price"/>
14+
<element name="addProductForm" type="text" selector=".product-add-form"/>
15+
<element name="socialLinksForm" type="text" selector=".product-social-links"/>
16+
<element name="shortDescription" type="button" selector=".product-info-main div.product.attribute.overview div.value"/>
1117
<element name="description" type="button" selector=".page-main-description"/>
1218
<element name="attributes" type="button" selector=".page-main-pagebuilder-attributes"/>
1319
<element name="moreInformation" type="button" selector=".additional-attributes-wrapper"/>
1420
<element name="infoMain" type="button" selector=".product-info-main"/>
15-
<element name="shortDescription" type="button" selector=".product-info-main div.product.attribute.overview div.value"/>
1621
<element name="media" type="button" selector=".product.media"/>
1722
<element name="reviews" type="button" selector=".block.review-add"/>
18-
<element name="related" type="button" selector=".block.related"/>
19-
<element name="upsell" type="button" selector=".block.upsell"/>
23+
<element name="relatedProducts" type="button" selector=".block.related"/>
24+
<element name="upsellProducts" type="button" selector=".block.upsell"/>
2025
</section>
2126
</sections>
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,117 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<!--
3+
/**
4+
* Copyright © Magento, Inc. All rights reserved.
5+
* See COPYING.txt for license details.
6+
*/
7+
-->
8+
9+
<tests xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
10+
xsi:noNamespaceSchemaLocation="urn:magento:mftf:Test/etc/testSchema.xsd">
11+
<test name="PageBuilderCMSPageVerifyPageFullWidthLayoutTest">
12+
<annotations>
13+
<features value="PageBuilder"/>
14+
<stories value="CMS Page"/>
15+
<title value="Verify Page – Full Width Layout Width and Order of Contents"/>
16+
<description value="Verify page builder Full Width layout renders storefront contents correctly for CMS
17+
Pages. Verify correct width of page builder contents."/>
18+
<severity value="BLOCKER"/>
19+
<testCaseId value="MC-15482"/>
20+
<!-- <group value="pagebuilder"/>-->
21+
<group value="pagebuilder-layout"/>
22+
<group value="pagebuilder-cms-page"/>
23+
</annotations>
24+
25+
<before>
26+
<!-- Create CMS Page -->
27+
<createData entity="_emptyCmsPage" stepKey="createCMSPage"/>
28+
<actionGroup ref="AdminLoginActionGroup" stepKey="loginAsAdmin"/>
29+
</before>
30+
31+
<after>
32+
<!-- Delete Data -->
33+
<resizeWindow width="1280" height="1024" stepKey="resizeWindowToDesktop"/>
34+
<deleteData createDataKey="createCMSPage" stepKey="deleteCMSPage"/>
35+
<actionGroup ref="AdminLogoutActionGroup" stepKey="logout"/>
36+
</after>
37+
38+
<!-- Add Row & Heading to CMS Page -->
39+
<actionGroup ref="NavigateToCreatedCMSPageActionGroup" stepKey="navigateToContentCreatedCMSPage1">
40+
<argument name="CMSPage" value="$$createCMSPage$$"/>
41+
</actionGroup>
42+
<actionGroup ref="switchToPageBuilderStage" stepKey="switchToPageBuilderStage"/>
43+
<actionGroup ref="dragContentTypeToStage" stepKey="dragRowToRootContainer">
44+
<argument name="contentType" value="PageBuilderRowContentType"/>
45+
<argument name="containerTargetType" value="PageBuilderRootContainerContentType"/>
46+
</actionGroup>
47+
<actionGroup ref="openPageBuilderEditPanelByIndex" stepKey="openEditMenuOnStage">
48+
<argument name="contentType" value="PageBuilderRowContentType"/>
49+
</actionGroup>
50+
<actionGroup ref="chooseVisualSelectOption" stepKey="enterAppearance">
51+
<argument name="property" value="PageBuilderRowAppearance_FullBleed"/>
52+
</actionGroup>
53+
<actionGroup ref="fillSlideOutPanelFieldGeneral" stepKey="enterBackgroundColor">
54+
<argument name="property" value="PageBuilderBackgroundColor_Sprout"/>
55+
</actionGroup>
56+
<actionGroup ref="saveEditPanelSettings" stepKey="saveEditPanelSettings"/>
57+
<actionGroup ref="expandPageBuilderPanelMenuSection" stepKey="expandPageBuilderPanelMenuSection">
58+
<argument name="contentType" value="PageBuilderHeadingContentType"/>
59+
</actionGroup>
60+
<actionGroup ref="dragContentTypeToContainer" stepKey="dragHeadingIntoStage">
61+
<argument name="contentType" value="PageBuilderHeadingContentType"/>
62+
</actionGroup>
63+
<actionGroup ref="enterHeadingOnStage" stepKey="enterHeadingOnStage">
64+
<argument name="headingText" value="PageBuilderHeadingText_PageContent"/>
65+
</actionGroup>
66+
<actionGroup ref="clickOutsideLiveEditHeading" stepKey="clickOutsideLiveEditHeading">
67+
<argument name="index" value="1"/>
68+
</actionGroup>
69+
<actionGroup ref="exitPageBuilderFullScreen" stepKey="exitPageBuilderFullScreen"/>
70+
71+
<!-- Set Page - Full Width layout -->
72+
<actionGroup ref="SetLayoutActionGroup" stepKey="setPageFullWidthLayout">
73+
<argument name="designSection" value="CmsDesignSection"/>
74+
<argument name="layoutOption" value="PageBuilderFullWidthLayout.cms"/>
75+
</actionGroup>
76+
77+
<!-- Save CMS Page -->
78+
<actionGroup ref="SaveAndContinueEditCmsPageActionGroup" stepKey="saveAndContinueEditCmsPage"/>
79+
80+
<!-- Storefront 1600px: Verify Contents Visible -->
81+
<actionGroup ref="NavigateToStorefrontForCreatedPageActionGroup" stepKey="navigateToCMSPageStorefront">
82+
<argument name="page" value="$$createCMSPage.identifier$$"/>
83+
</actionGroup>
84+
<resizeWindow width="1600" height="1024" stepKey="resizeWindowWidth1"/>
85+
<waitForElementVisible selector="{{HeadingOnStorefront.headingText(PageBuilderHeadingTypeProperty_H2.value, PageBuilderHeadingText_PageContent.value, '1')}}" stepKey="waitForStorefrontHeadingText"/>
86+
87+
<!-- Storefront 1600px: Assert Page Builder Contents Are Correct Width -->
88+
<executeJS function="return document.querySelector('[class=page-wrapper]').clientWidth" stepKey="pageWidth"/>
89+
<executeJS function="return document.querySelectorAll('{{RowOnStorefront.baseCSS}}')[0].clientWidth" stepKey="rowWidth"/>
90+
<executeJS function="return document.querySelectorAll(&quot;{{HeadingOnStorefront.all}}&quot;)[0].clientWidth" stepKey="headingWidth"/>
91+
<assertEquals stepKey="assertRowWidthEqualsWindowWidth">
92+
<expectedResult type="variable">pageWidth</expectedResult>
93+
<actualResult type="variable">rowWidth</actualResult>
94+
</assertEquals>
95+
<assertEquals stepKey="assertHeadingWidthEqualsRowWidth">
96+
<expectedResult type="variable">rowWidth</expectedResult>
97+
<actualResult type="variable">headingWidth</actualResult>
98+
</assertEquals>
99+
100+
<!-- Storefront 767px: Verify Contents Visible -->
101+
<resizeWindow width="767" height="1000" stepKey="resizeWindowWidth2"/>
102+
<waitForElementVisible selector="{{HeadingOnStorefront.headingText(PageBuilderHeadingTypeProperty_H2.value, PageBuilderHeadingText_PageContent.value, '1')}}" stepKey="waitForStorefrontHeadingText2"/>
103+
104+
<!-- Storefront 767px: Assert Page Builder Contents Are Correct Width -->
105+
<executeJS function="return document.querySelector('[class=page-wrapper]').clientWidth" stepKey="pageWidth2"/>
106+
<executeJS function="return document.querySelectorAll('{{RowOnStorefront.baseCSS}}')[0].clientWidth" stepKey="rowWidth2"/>
107+
<executeJS function="return document.querySelectorAll(&quot;{{HeadingOnStorefront.all}}&quot;)[0].clientWidth" stepKey="headingWidth2"/>
108+
<assertEquals stepKey="assertRowWidthEqualsWindowWidth2">
109+
<expectedResult type="variable">pageWidth2</expectedResult>
110+
<actualResult type="variable">rowWidth2</actualResult>
111+
</assertEquals>
112+
<assertEquals stepKey="assertHeadingWidthEqualsRowWidth2">
113+
<expectedResult type="variable">rowWidth2</expectedResult>
114+
<actualResult type="variable">headingWidth2</actualResult>
115+
</assertEquals>
116+
</test>
117+
</tests>

0 commit comments

Comments
 (0)