Skip to content

Commit 4e5ac67

Browse files
committed
MC-37896: Create automated test for "Reset Widget"
1 parent 4527d76 commit 4e5ac67

File tree

6 files changed

+136
-1
lines changed

6 files changed

+136
-1
lines changed
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
<!--
2+
/**
3+
* Copyright © Magento, Inc. All rights reserved.
4+
* See COPYING.txt for license details.
5+
*/
6+
-->
7+
8+
<actionGroups xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
9+
xsi:noNamespaceSchemaLocation="urn:magento:mftf:Test/etc/actionGroupSchema.xsd">
10+
<actionGroup name="AdminSaveAndContinueWidgetActionGroup">
11+
<annotations>
12+
<description>Click on the Save an Continue button and check the success message</description>
13+
</annotations>
14+
<scrollToTopOfPage stepKey="scrollToTopOfPage"/>
15+
<click selector="{{AdminNewWidgetSection.saveAndContinue}}" stepKey="clickSaveWidget"/>
16+
<waitForElementVisible selector="{{AdminMessagesSection.success}}" stepKey="waitForPageLoad"/>
17+
<see selector="{{AdminMessagesSection.success}}" userInput="The widget instance has been saved" stepKey="seeSuccess"/>
18+
</actionGroup>
19+
</actionGroups>
20+
21+
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
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+
<actionGroups xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
10+
xsi:noNamespaceSchemaLocation="urn:magento:mftf:Test/etc/actionGroupSchema.xsd">
11+
<actionGroup name="AdminSetInputTypeAndDesignActionGroup">
12+
<annotations>
13+
<description>On the widget_instance page select widget type and design</description>
14+
</annotations>
15+
<arguments>
16+
<argument name="widgetType" defaultValue="{{ProductsListWidget.type}}" type="string"/>
17+
<argument name="widgetDesign" defaultValue="{{ProductsListWidget.design_theme}}" type="string"/>
18+
</arguments>
19+
<selectOption selector="{{AdminNewWidgetSection.widgetType}}" userInput="{{widgetType}}" stepKey="setWidgetType"/>
20+
<selectOption selector="{{AdminNewWidgetSection.widgetDesignTheme}}" userInput="{{widgetDesign}}" stepKey="setWidgetDesignTheme"/>
21+
</actionGroup>
22+
</actionGroups>
Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
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+
<actionGroups xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
10+
xsi:noNamespaceSchemaLocation="urn:magento:mftf:Test/etc/actionGroupSchema.xsd">
11+
<actionGroup name="AdminSetWidgetNameAndStoreActionGroup">
12+
<annotations>
13+
<description>On the widget creation page page set widget name, store add sort order.</description>
14+
</annotations>
15+
<arguments>
16+
<argument name="widgetName" defaultValue="{{ProductsListWidget.name}}" type="string"/>
17+
<argument name="widgetStore" defaultValue="{{ProductsListWidget.store_ids}}" type="string"/>
18+
<argument name="widgetSortOrder" defaultValue="{{ProductsListWidget.sort_order}}" type="string"/>
19+
</arguments>
20+
<fillField selector="{{AdminNewWidgetSection.widgetTitle}}" userInput="{{widgetName}}" stepKey="fillTitle"/>
21+
<selectOption selector="{{AdminNewWidgetSection.widgetStoreIds}}" parameterArray="[{{widgetStore}}]" stepKey="setWidgetStoreId"/>
22+
<fillField selector="{{AdminNewWidgetSection.widgetSortOrder}}" userInput="{{widgetSortOrder}}" stepKey="fillSortOrder"/>
23+
</actionGroup>
24+
</actionGroups>

app/code/Magento/Widget/Test/Mftf/Data/WidgetsData.xml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@
1212
<data key="type">Catalog Products List</data>
1313
<data key="design_theme">Magento Luma</data>
1414
<data key="name" unique="suffix">TestWidget</data>
15+
<data key="sort_order">0</data>
1516
<array key="store_ids">
1617
<item>All Store Views</item>
1718
</array>

app/code/Magento/Widget/Test/Mftf/Section/AdminNewWidgetSection.xml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@
1212
<element name="widgetType" type="select" selector="#code"/>
1313
<element name="widgetDesignTheme" type="select" selector="#theme_id"/>
1414
<element name="continue" type="button" timeout="30" selector="#continue_button"/>
15+
<element name="resetBtn" type="button" selector="#reset" timeout="30"/>
1516
<element name="widgetTitle" type="input" selector="#title"/>
1617
<element name="widgetStoreIds" type="select" selector="#store_ids"/>
1718
<element name="widgetSortOrder" type="input" selector="#sort_order"/>
@@ -38,10 +39,11 @@
3839
<element name="searchBlock" type="button" selector="//div[@class='admin__filter-actions']/button[@title='Search']"/>
3940
<element name="blockStatus" type="select" selector="//select[@name='chooser_is_active']"/>
4041
<element name="searchedBlock" type="button" selector="//*[@class='magento-message']//tbody/tr/td[1]"/>
41-
<element name="saveWidget" type="select" selector="#save"/>
42+
<element name="saveWidget" type="button" selector="#save"/>
4243
<element name="displayMode" type="select" selector="select[id*='display_mode']"/>
4344
<element name="restrictTypes" type="select" selector="select[id*='types']"/>
4445
<element name="saveAndContinue" type="button" selector="#save_and_edit_button" timeout="30"/>
46+
<element name="widgetInstanceType" type="select" selector="#instance_code" />
4547
<!-- Catalog Product List Widget Options -->
4648
<element name="title" type="input" selector="[name='parameters[title]']"/>
4749
<element name="displayPageControl" type="select" selector="[name='parameters[show_pager]']"/>
Lines changed: 65 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,65 @@
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="AdminResetWidgetTest">
12+
<annotations>
13+
<features value="Widget"/>
14+
<stories value="Reset widget"/>
15+
<title value="[CMS Widgets] Reset Widget"/>
16+
<description value="Check that admin user can reset widget form after filling out all information"/>
17+
<severity value="MAJOR"/>
18+
<testCaseId value="MC-37892"/>
19+
<group value="widget"/>
20+
</annotations>
21+
<before>
22+
<actionGroup ref="AdminLoginActionGroup" stepKey="loginAsAdmin"/>
23+
</before>
24+
<after>
25+
<actionGroup ref="AdminDeleteWidgetActionGroup" stepKey="deleteWidget">
26+
<argument name="widget" value="ProductsListWidget"/>
27+
</actionGroup>
28+
<actionGroup ref="AdminLogoutActionGroup" stepKey="logoutFromAdmin"/>
29+
</after>
30+
<amOnPage url="{{AdminNewWidgetPage.url}}" stepKey="amOnAdminNewWidgetPage"/>
31+
<actionGroup ref="AdminSetInputTypeAndDesignActionGroup" stepKey="firstSetTypeAndDesign">
32+
<argument name="widgetType" value="{{ProductsListWidget.type}}"/>
33+
<argument name="widgetDesign" value="{{ProductsListWidget.design_theme}}"/>
34+
</actionGroup>
35+
<click selector="{{AdminNewWidgetSection.resetBtn}}" stepKey="resetInstance"/>
36+
<dontSeeInField userInput="{{ProductsListWidget.type}}" selector="{{AdminNewWidgetSection.widgetType}}" stepKey="dontSeeTypeAfterReset"/>
37+
<dontSeeInField userInput="{{ProductsListWidget.design_theme}}" selector="{{AdminNewWidgetSection.widgetDesignTheme}}" stepKey="dontSeeDesignAfterReset"/>
38+
<actionGroup ref="AdminSetInputTypeAndDesignActionGroup" stepKey="setTypeAndDesignAfterReset">
39+
<argument name="widgetType" value="{{ProductsListWidget.type}}"/>
40+
<argument name="widgetDesign" value="{{ProductsListWidget.design_theme}}"/>
41+
</actionGroup>
42+
<click selector="{{AdminNewWidgetSection.continue}}" stepKey="clickContinue"/>
43+
<actionGroup ref="AdminSetWidgetNameAndStoreActionGroup" stepKey="setNameAndStore">
44+
<argument name="widgetName" value="{{ProductsListWidget.name}}"/>
45+
<argument name="widgetStore" value="{{ProductsListWidget.store_ids}}"/>
46+
<argument name="widgetSortOrder" value="{{ProductsListWidget.sort_order}}"/>
47+
</actionGroup>
48+
<click selector="{{AdminNewWidgetSection.resetBtn}}" stepKey="resetNameAndStore"/>
49+
<dontSeeInField userInput="{{ProductsListWidget.name}}" selector="{{AdminNewWidgetSection.widgetTitle}}" stepKey="dontSeeNameAfterReset"/>
50+
<dontSeeInField userInput="{{ProductsListWidget.store_ids[0]}}" selector="{{AdminNewWidgetSection.widgetStoreIds}}" stepKey="dontSeeStoreAfterReset"/>
51+
<dontSeeInField userInput="{{ProductsListWidget.sort_order}}" selector="{{AdminNewWidgetSection.widgetSortOrder}}" stepKey="dontSeeSortOrderAfterReset"/>
52+
<actionGroup ref="AdminSetWidgetNameAndStoreActionGroup" stepKey="setNameAndStoreAfterReset">
53+
<argument name="widgetName" value="{{ProductsListWidget.name}}"/>
54+
<argument name="widgetStore" value="{{ProductsListWidget.store_ids}}"/>
55+
<argument name="widgetSortOrder" value="{{ProductsListWidget.sort_order}}"/>
56+
</actionGroup>
57+
<actionGroup ref="AdminSaveAndContinueWidgetActionGroup" stepKey="saveWidget"/>
58+
<click selector="{{AdminNewWidgetSection.resetBtn}}" stepKey="resetWidget"/>
59+
<seeInField userInput="{{ProductsListWidget.name}}" selector="{{AdminNewWidgetSection.widgetTitle}}" stepKey="seeNameAfterReset"/>
60+
<seeInField userInput="{{ProductsListWidget.store_ids[0]}}" selector="{{AdminNewWidgetSection.widgetStoreIds}}" stepKey="seeStoreAfterReset"/>
61+
<seeInField userInput="{{ProductsListWidget.sort_order}}" selector="{{AdminNewWidgetSection.widgetSortOrder}}" stepKey="seeSortOrderAfterReset"/>
62+
<seeInField userInput="{{ProductsListWidget.type}}" selector="{{AdminNewWidgetSection.widgetInstanceType}}" stepKey="seeTypeAfterReset"/>
63+
<seeInField userInput="{{ProductsListWidget.design_theme}}" selector="{{AdminNewWidgetSection.widgetDesignTheme}}" stepKey="seeThemeAfterReset"/>
64+
</test>
65+
</tests>

0 commit comments

Comments
 (0)