Skip to content

Commit ea4a895

Browse files
committed
ACQE-8176: [Sorting] Check whether customer/guest is able to sort the product in the frontend when Remember Category Pagination is enabled
- New automation testfile and actiongroup has been added
1 parent a947b30 commit ea4a895

File tree

4 files changed

+172
-0
lines changed

4 files changed

+172
-0
lines changed
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<!--
3+
/**
4+
* Copyright 2025 Adobe
5+
* All Rights Reserved.
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="AdminDisableRememberCategoryPaginationActionGroup">
12+
<annotations>
13+
<description>Disable the remember category pagination through CLI</description>
14+
</annotations>
15+
<magentoCLI command="config:set {{DisableRememberCategoryPagination.path}} {{DisableRememberCategoryPagination.value}}" stepKey="disableCategoryPagination"/>
16+
</actionGroup>
17+
</actionGroups>
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<!--
3+
/**
4+
* Copyright 2025 Adobe
5+
* All Rights Reserved.
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="AdminEnableRememberCategoryPaginationActionGroup">
12+
<annotations>
13+
<description>Enable the remember category pagination through CLI</description>
14+
</annotations>
15+
<magentoCLI command="config:set {{EnableRememberCategoryPagination.path}} {{EnableRememberCategoryPagination.value}}" stepKey="enableCategoryPagination"/>
16+
</actionGroup>
17+
</actionGroups>

app/code/Magento/Catalog/Test/Mftf/Data/ConfigData.xml

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -41,4 +41,12 @@
4141
<data key="path">catalog/custom_options/use_calendar</data>
4242
<data key="value">0</data>
4343
</entity>
44+
<entity name="EnableRememberCategoryPagination">
45+
<data key="path">catalog/frontend/remember_pagination</data>
46+
<data key="value">1</data>
47+
</entity>
48+
<entity name="DisableRememberCategoryPagination">
49+
<data key="path">catalog/frontend/remember_pagination</data>
50+
<data key="value">0</data>
51+
</entity>
4452
</entities>
Lines changed: 130 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,130 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<!--
3+
/**
4+
* Copyright 2025 Adobe
5+
* All Rights Reserved.
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="StorefrontAssertsCustomerBehaviourForProductTest">
12+
<annotations>
13+
<features value="Catalog"/>
14+
<stories value="Verify customer behaviour on storefront in product page"/>
15+
<title value="Check customer behaviour for product page on storefront if remember category pagination is enabled"/>
16+
<description value="Admin verifies the customer or guest can able to sort product on storefront when remember category pagination is enabled"/>
17+
<severity value="MAJOR"/>
18+
<testCaseId value="AC-8905"/>
19+
<group value="catalog"/>
20+
</annotations>
21+
<before>
22+
<!-- Precondition Step.1: Magento should be installed.with Sample Data -->
23+
<createData entity="_defaultCategory" stepKey="category"/>
24+
<createData entity="SimpleProduct" stepKey="product1">
25+
<requiredEntity createDataKey="category"/>
26+
<field key="name">Bag</field>
27+
<field key="price">120</field>
28+
</createData>
29+
<createData entity="_defaultProduct" stepKey="product2">
30+
<requiredEntity createDataKey="category"/>
31+
<field key="name">Red Bag</field>
32+
<field key="price">130</field>
33+
</createData>
34+
<createData entity="ApiSimpleProduct" stepKey="product3">
35+
<requiredEntity createDataKey="category"/>
36+
<field key="name">Green Bag</field>
37+
<field key="price">140</field>
38+
</createData>
39+
<createData entity="SimpleProduct" stepKey="product4">
40+
<requiredEntity createDataKey="category"/>
41+
</createData>
42+
<createData entity="Simple_US_Customer" stepKey="customer"/>
43+
<!-- Precondition Step.2: "Remember Category Pagination" should be enabled in the configuration -->
44+
<actionGroup ref="AdminEnableRememberCategoryPaginationActionGroup" stepKey="enableRememberCategoryPagination"/>
45+
</before>
46+
<after>
47+
<!-- Delete data -->
48+
<deleteData createDataKey="product1" stepKey="deleteProduct1"/>
49+
<deleteData createDataKey="product2" stepKey="deleteProduct2"/>
50+
<deleteData createDataKey="product3" stepKey="deleteProduct3"/>
51+
<deleteData createDataKey="product4" stepKey="deleteProduct4"/>
52+
<deleteData createDataKey="category" stepKey="deleteCategory"/>
53+
<deleteData createDataKey="customer" stepKey="deleteCustomer1"/>
54+
<!-- Set remember category pagination as no-->
55+
<actionGroup ref="AdminDisableRememberCategoryPaginationActionGroup" stepKey="disableRememberCategoryPagination"/>
56+
<!-- Logout From Storefront -->
57+
<actionGroup ref="StorefrontCustomerLogoutActionGroup" stepKey="logoutStorefront"/>
58+
</after>
59+
<!-- Step 1: Go to frontend -->
60+
<actionGroup ref="LoginToStorefrontActionGroup" stepKey="customerLogin">
61+
<argument name="Customer" value="$$customer$$"/>
62+
</actionGroup>
63+
<actionGroup ref="StorefrontNavigateToCategoryUrlActionGroup" stepKey="NavigateToCategoryPageOnStoreFront">
64+
<argument name="categoryUrl" value="$$category.custom_attributes[url_key]$$"/>
65+
</actionGroup>
66+
<!-- Step 2: Search for the product example - Bag -->
67+
<actionGroup ref="StoreFrontQuickSearchActionGroup" stepKey="searchByCreatedTerm">
68+
<argument name="query" value="Bag"/>
69+
</actionGroup>
70+
<!-- Step 3: Sort by Change to "Price". -->
71+
<actionGroup ref="StorefrontCategoryPageSortProductActionGroup" stepKey="sortProductByPrice"/>
72+
<!-- Step 4: Click the arrow to sort by price desc/asc by clicking on UP/Down arrow. -->
73+
<actionGroup ref="StorefrontCategoryPageSortDescendingActionGroup" stepKey="setDescendingDirection"/>
74+
<selectOption selector="{{StorefrontCategoryTopToolbarSection.sortByDropdown}}" userInput="Price" stepKey="selectSortByProductName"/>
75+
<actionGroup ref="StorefrontCategoryPageSortAscendingActionGroup" stepKey="setAscendingDirection"/>
76+
<selectOption selector="{{StorefrontCategoryTopToolbarSection.showDropdown}}" userInput="24" stepKey="selectShowProducts"/>
77+
<actionGroup ref="AssertStorefrontElementVisibleActionGroup" stepKey="seeProductFirstPosition">
78+
<argument name="selector" value="{{StorefrontCategoryMainSection.lineProductName('1')}}"/>
79+
<argument name="userInput" value="$$product3.name$$"/>
80+
</actionGroup>
81+
<actionGroup ref="AssertStorefrontElementVisibleActionGroup" stepKey="seeProductSecondPosition">
82+
<argument name="selector" value="{{StorefrontCategoryMainSection.lineProductName('2')}}"/>
83+
<argument name="userInput" value="$$product2.name$$"/>
84+
</actionGroup>
85+
<actionGroup ref="AssertStorefrontElementVisibleActionGroup" stepKey="seeProductThirdPosition">
86+
<argument name="selector" value="{{StorefrontCategoryMainSection.lineProductName('3')}}"/>
87+
<argument name="userInput" value="$$product1.name$$"/>
88+
</actionGroup>
89+
<!-- Step 5: Try clicking multiple times on arrow. -->
90+
<actionGroup ref="StorefrontCategoryPageSortDescendingActionGroup" stepKey="setDescendingDirection1"/>
91+
<actionGroup ref="AssertStorefrontElementVisibleActionGroup" stepKey="seeProductFirstPosition1">
92+
<argument name="selector" value="{{StorefrontCategoryMainSection.lineProductName('1')}}"/>
93+
<argument name="userInput" value="$$product1.name$$"/>
94+
</actionGroup>
95+
<actionGroup ref="AssertStorefrontElementVisibleActionGroup" stepKey="seeProductSecondPosition1">
96+
<argument name="selector" value="{{StorefrontCategoryMainSection.lineProductName('2')}}"/>
97+
<argument name="userInput" value="$$product2.name$$"/>
98+
</actionGroup>
99+
<actionGroup ref="AssertStorefrontElementVisibleActionGroup" stepKey="seeProductThirdPosition1">
100+
<argument name="selector" value="{{StorefrontCategoryMainSection.lineProductName('3')}}"/>
101+
<argument name="userInput" value="$$product3.name$$"/>
102+
</actionGroup>
103+
<actionGroup ref="StorefrontCategoryPageSortAscendingActionGroup" stepKey="setDescendingDirection2"/>
104+
<actionGroup ref="AssertStorefrontElementVisibleActionGroup" stepKey="seeProductFirstPosition2">
105+
<argument name="selector" value="{{StorefrontCategoryMainSection.lineProductName('1')}}"/>
106+
<argument name="userInput" value="$$product3.name$$"/>
107+
</actionGroup>
108+
<actionGroup ref="AssertStorefrontElementVisibleActionGroup" stepKey="seeProductSecondPosition2">
109+
<argument name="selector" value="{{StorefrontCategoryMainSection.lineProductName('2')}}"/>
110+
<argument name="userInput" value="$$product2.name$$"/>
111+
</actionGroup>
112+
<actionGroup ref="AssertStorefrontElementVisibleActionGroup" stepKey="seeProductThirdPosition2">
113+
<argument name="selector" value="{{StorefrontCategoryMainSection.lineProductName('3')}}"/>
114+
<argument name="userInput" value="$$product1.name$$"/>
115+
</actionGroup>
116+
<actionGroup ref="StorefrontCategoryPageSortDescendingActionGroup" stepKey="setDescendingDirection3"/>
117+
<actionGroup ref="AssertStorefrontElementVisibleActionGroup" stepKey="seeProductFirstPosition3">
118+
<argument name="selector" value="{{StorefrontCategoryMainSection.lineProductName('1')}}"/>
119+
<argument name="userInput" value="$$product1.name$$"/>
120+
</actionGroup>
121+
<actionGroup ref="AssertStorefrontElementVisibleActionGroup" stepKey="seeProductSecondPosition3">
122+
<argument name="selector" value="{{StorefrontCategoryMainSection.lineProductName('2')}}"/>
123+
<argument name="userInput" value="$$product2.name$$"/>
124+
</actionGroup>
125+
<actionGroup ref="AssertStorefrontElementVisibleActionGroup" stepKey="seeProductThirdPosition3">
126+
<argument name="selector" value="{{StorefrontCategoryMainSection.lineProductName('3')}}"/>
127+
<argument name="userInput" value="$$product3.name$$"/>
128+
</actionGroup>
129+
</test>
130+
</tests>

0 commit comments

Comments
 (0)