Skip to content

Commit

Permalink
ENGCOM-8562: [MFTF] Refactoring of Search actions on Storefront #31240
Browse files Browse the repository at this point in the history
 - Merge Pull Request #31240 from AnnaAPak/magento2:ref-QuickSearch
 - Merged commits:
   1. edab7db
   2. e93ac14
   3. 99cfcaa
   4. 631dc30
   5. a675e9f
   6. b162d05
   7. 772b16f
   8. 958af2b
   9. 680312b
   10. 332ef5d
   11. 2561d07
  • Loading branch information
magento-engcom-team committed Jan 20, 2021
2 parents 3b860f5 + 2561d07 commit bff5a78
Show file tree
Hide file tree
Showing 21 changed files with 229 additions and 122 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
/**
* Copyright © Magento, Inc. All rights reserved.
* See COPYING.txt for license details.
-->

<actionGroups xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="urn:magento:mftf:Test/etc/actionGroupSchema.xsd">
<actionGroup name="AssertStorefrontProductNameIsNotOnProductMainPageActionGroup">
<annotations>
<description>Validates that the provided Product Name is NOT present on a Storefront page.</description>
</annotations>
<arguments>
<argument name="productName" type="string"/>
</arguments>

<waitForPageLoad stepKey="waitForTheProductPageToLoad"/>
<dontSee selector="{{StorefrontCategoryMainSection.productName}}" userInput="{{productName}}" stepKey="dontSeeProductName"/>
</actionGroup>
</actionGroups>
Original file line number Diff line number Diff line change
Expand Up @@ -55,7 +55,7 @@
<fillField selector="{{AdminProductFormSection.productQuantity}}" userInput="100" stepKey="fillProductQty"/>
<actionGroup ref="AdminSetStockStatusActionGroup" stepKey="selectStockStatus">
<argument name="stockStatus" value="In Stock"/>
</actionGroup>
</actionGroup>

<!-- Create New Product Attribute -->
<click selector="{{AdminProductFormSection.addAttributeBtn}}" stepKey="clickOnAddAttribute"/>
Expand Down Expand Up @@ -128,10 +128,14 @@
<!--Verify Product Attribute present in search page -->
<amOnPage url="$$createCategory.name$$.html" stepKey="goToStorefrontPage1"/>
<waitForPageLoad stepKey="waitForProductFrontPageToLoad1"/>
<fillField selector="{{StorefrontQuickSearchResultsSection.searchTextBox}}" userInput="{{ProductAttributeOption8.value}}" stepKey="fillAttribute"/>
<waitForPageLoad stepKey="waitForSearchTextBox"/>
<click selector="{{StorefrontQuickSearchResultsSection.searchTextBoxButton}}" stepKey="clickSearchTextBoxButton"/>
<waitForPageLoad stepKey="waitForSearch"/>
<see selector="{{StorefrontCategoryMainSection.productName}}" userInput="{{SimpleProduct.name}}" stepKey="seeProductNameInCategoryPage"/>
<actionGroup ref="StorefrontCheckQuickSearchStringActionGroup" stepKey="fillAttribute">
<argument name="phrase" value="{{ProductAttributeOption8.value}}"/>
</actionGroup>
<comment userInput="Comment is added to preserve the step key for backward compatibility" stepKey="waitForSearchTextBox"/>
<comment userInput="Comment is added to preserve the step key for backward compatibility" stepKey="clickSearchTextBoxButton"/>
<comment userInput="Comment is added to preserve the step key for backward compatibility" stepKey="waitForSearch"/>
<actionGroup ref="StorefrontAssertProductNameOnProductMainPageActionGroup" stepKey="seeProductNameInCategoryPage">
<argument name="productName" value="{{SimpleProduct.name}}"/>
</actionGroup>
</test>
</tests>
Original file line number Diff line number Diff line change
Expand Up @@ -125,11 +125,15 @@
<!-- Verify customer see created virtual product with custom options suite and import options(from above step) on storefront page and is searchable by sku -->
<amOnPage url="{{StorefrontProductPage.url(virtualProductCustomImportOptions.urlKey)}}" stepKey="goToProductPage"/>
<waitForPageLoad stepKey="waitForStoreFrontProductPageLoad"/>
<fillField selector="{{StorefrontQuickSearchResultsSection.searchTextBox}}" userInput="{{virtualProductCustomImportOptions.sku}}" stepKey="fillVirtualProductName"/>
<waitForPageLoad stepKey="waitForSearchTextBox"/>
<click selector="{{StorefrontQuickSearchResultsSection.searchTextBoxButton}}" stepKey="clickSearchTextBoxButton"/>
<waitForPageLoad stepKey="waitForSearch"/>
<see selector="{{StorefrontQuickSearchResultsSection.productLink}}" userInput="{{virtualProductCustomImportOptions.name}}" stepKey="seeVirtualProductName"/>
<actionGroup ref="StorefrontCheckQuickSearchStringActionGroup" stepKey="fillVirtualProductName">
<argument name="phrase" value="{{virtualProductCustomImportOptions.sku}}"/>
</actionGroup>
<comment userInput="Comment is added to preserve the step key for backward compatibility" stepKey="waitForSearchTextBox"/>
<comment userInput="Comment is added to preserve the step key for backward compatibility" stepKey="clickSearchTextBoxButton"/>
<comment userInput="Comment is added to preserve the step key for backward compatibility" stepKey="waitForSearch"/>
<actionGroup ref="StorefrontAssertProductNameOnProductMainPageActionGroup" stepKey="seeVirtualProductName">
<argument name="productName" value="{{virtualProductCustomImportOptions.name}}"/>
</actionGroup>
<click selector="{{StorefrontQuickSearchResultsSection.productLink}}" stepKey="openSearchedProduct"/>

<!-- Verify we see created virtual product with custom options suite and import options on the storefront page -->
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -102,11 +102,16 @@

<!-- Verify customer see created virtual product with tier price(from above step) on storefront page and is searchable by sku -->
<actionGroup ref="StorefrontOpenHomePageActionGroup" stepKey="goToHomePage"/>
<fillField selector="{{StorefrontQuickSearchResultsSection.searchTextBox}}" userInput="{{virtualProductBigQty.sku}}" stepKey="fillVirtualProductName"/>
<waitForPageLoad stepKey="waitForSearchTextBox"/>
<click selector="{{StorefrontQuickSearchResultsSection.searchTextBoxButton}}" stepKey="clickSearchTextBoxButton"/>
<waitForPageLoad stepKey="waitForSearch"/>
<see selector="{{StorefrontQuickSearchResultsSection.productLink}}" userInput="{{virtualProductBigQty.name}}" stepKey="seeVirtualProductName"/>
<actionGroup ref="StorefrontCheckQuickSearchStringActionGroup" stepKey="fillVirtualProductName">
<argument name="phrase" value="{{virtualProductBigQty.sku}}"/>
</actionGroup>
<comment userInput="Comment is added to preserve the step key for backward compatibility" stepKey="waitForSearchTextBox"/>
<comment userInput="Comment is added to preserve the step key for backward compatibility" stepKey="clickSearchTextBoxButton"/>
<comment userInput="Comment is added to preserve the step key for backward compatibility" stepKey="waitForSearch"/>
<actionGroup ref="StorefrontAssertProductNameOnProductMainPageActionGroup" stepKey="seeVirtualProductName">
<argument name="productName" value="{{virtualProductBigQty.name}}"/>
</actionGroup>

<grabTextFrom selector="{{StorefrontQuickSearchResultsSection.asLowAsLabel}}" stepKey="tierPriceTextOnStorefrontPage"/>
<assertEquals stepKey="assertTierPriceTextOnCategoryPage">
<expectedResult type="string">As low as ${{tierPriceOnVirtualProduct.price}}</expectedResult>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -71,20 +71,31 @@
<!--Verify customer see default simple product name on magento storefront page -->
<amOnPage url="{{StorefrontProductPage.url($$initialSimpleProduct.custom_attributes[url_key]$$)}}" stepKey="goToMagentoStorefrontPage"/>
<waitForPageLoad stepKey="waitForStoreFrontProductPageLoad"/>
<fillField selector="{{StorefrontQuickSearchResultsSection.searchTextBox}}" userInput="$$initialSimpleProduct.sku$$" stepKey="fillDefaultSimpleProductSkuInSearchTextBox"/>
<waitForPageLoad stepKey="waitForSearchTextBox"/>
<click selector="{{StorefrontQuickSearchResultsSection.searchTextBoxButton}}" stepKey="clickSearchTextBoxButton"/>
<waitForPageLoad stepKey="waitForSearch"/>
<see selector="{{StorefrontQuickSearchResultsSection.productLink}}" userInput="$$initialSimpleProduct.name$$" stepKey="seeDefaultProductName"/>

<actionGroup ref="StorefrontCheckQuickSearchStringActionGroup" stepKey="fillDefaultSimpleProductSkuInSearchTextBox">
<argument name="phrase" value="$$initialSimpleProduct.sku$$"/>
</actionGroup>
<comment userInput="Comment is added to preserve the step key for backward compatibility" stepKey="waitForSearchTextBox"/>
<comment userInput="Comment is added to preserve the step key for backward compatibility" stepKey="clickSearchTextBoxButton"/>
<comment userInput="Comment is added to preserve the step key for backward compatibility" stepKey="waitForSearch"/>
<actionGroup ref="StorefrontAssertProductNameOnProductMainPageActionGroup" stepKey="seeDefaultProductName">
<argument name="productName" value="$$initialSimpleProduct.name$$"/>
</actionGroup>

<!--Verify customer see simple product with updated name on magento storefront page under store view section -->
<click selector="{{StorefrontHeaderSection.storeViewSwitcher}}" stepKey="clickStoreViewSwitcher"/>
<waitForPageLoad stepKey="waitForStoreSwitcherLoad"/>
<click selector="{{StorefrontHeaderSection.storeView(customStoreFR.name)}}" stepKey="clickStoreViewOption"/>
<fillField selector="{{StorefrontQuickSearchResultsSection.searchTextBox}}" userInput="$$initialSimpleProduct.sku$$" stepKey="fillDefaultSimpleProductSkuInSearch"/>
<waitForPageLoad stepKey="waitForSearchTextBoxLoad"/>
<click selector="{{StorefrontQuickSearchResultsSection.searchTextBoxButton}}" stepKey="clickSearchTextButton"/>
<waitForPageLoad stepKey="waitForTextSearchLoad"/>
<see selector="{{StorefrontQuickSearchResultsSection.productLink}}" userInput="{{simpleProductDataOverriding.name}}" stepKey="seeUpdatedSimpleProductName"/>

<actionGroup ref="StorefrontCheckQuickSearchStringActionGroup" stepKey="fillDefaultSimpleProductSkuInSearch">
<argument name="phrase" value="$$initialSimpleProduct.sku$$"/>
</actionGroup>
<comment userInput="Comment is added to preserve the step key for backward compatibility" stepKey="waitForSearchTextBoxLoad"/>
<comment userInput="Comment is added to preserve the step key for backward compatibility" stepKey="clickSearchTextButton"/>
<comment userInput="Comment is added to preserve the step key for backward compatibility" stepKey="waitForTextSearchLoad"/>
<actionGroup ref="StorefrontAssertProductNameOnProductMainPageActionGroup" stepKey="seeUpdatedSimpleProductName">
<argument name="productName" value="{{simpleProductDataOverriding.name}}"/>
</actionGroup>

</test>
</tests>
Original file line number Diff line number Diff line change
Expand Up @@ -69,20 +69,24 @@
<!-- Verify customer see simple product with updated price on magento storefront page -->
<amOnPage url="{{StorefrontProductPage.url($$initialSimpleProduct.custom_attributes[url_key]$$)}}" stepKey="goToMagentoStorefrontPage"/>
<waitForPageLoad stepKey="waitForStoreFrontProductPageLoad"/>
<fillField selector="{{StorefrontQuickSearchResultsSection.searchTextBox}}" userInput="$$initialSimpleProduct.sku$$" stepKey="fillDefaultSimpleProductSkuInSearchTextBox"/>
<waitForPageLoad stepKey="waitForSearchTextBox"/>
<click selector="{{StorefrontQuickSearchResultsSection.searchTextBoxButton}}" stepKey="clickSearchTextBoxButton"/>
<waitForPageLoad stepKey="waitForSearch"/>
<actionGroup ref="StorefrontCheckQuickSearchStringActionGroup" stepKey="fillDefaultSimpleProductSkuInSearchTextBox">
<argument name="phrase" value="$$initialSimpleProduct.sku$$"/>
</actionGroup>
<comment userInput="Comment is added to preserve the step key for backward compatibility" stepKey="waitForSearchTextBox"/>
<comment userInput="Comment is added to preserve the step key for backward compatibility" stepKey="clickSearchTextBoxButton"/>
<comment userInput="Comment is added to preserve the step key for backward compatibility" stepKey="waitForSearch"/>
<see selector="{{StorefrontQuickSearchResultsSection.regularPrice}}" userInput="{{simpleProductDataOverriding.price}}" stepKey="seeUpdatedProductPriceOnStorefrontPage"/>

<!-- Verify customer see simple product with updated price on magento storefront page under store view section -->
<click selector="{{StorefrontHeaderSection.storeViewSwitcher}}" stepKey="clickStoreViewSwitcher"/>
<waitForPageLoad stepKey="waitForStoreSwitcherLoad"/>
<click selector="{{StorefrontHeaderSection.storeView(customStoreFR.name)}}" stepKey="clickStoreViewOption"/>
<fillField selector="{{StorefrontQuickSearchResultsSection.searchTextBox}}" userInput="$$initialSimpleProduct.sku$$" stepKey="fillDefaultSimpleProductSkuInSearch"/>
<waitForPageLoad stepKey="waitForSearchTextBoxLoad"/>
<click selector="{{StorefrontQuickSearchResultsSection.searchTextBoxButton}}" stepKey="clickSearchTextButton"/>
<waitForPageLoad stepKey="waitForTextSearchLoad"/>
<actionGroup ref="StorefrontCheckQuickSearchStringActionGroup" stepKey="fillDefaultSimpleProductSkuInSearch">
<argument name="phrase" value="$$initialSimpleProduct.sku$$"/>
</actionGroup>
<comment userInput="Comment is added to preserve the step key for backward compatibility" stepKey="waitForSearchTextBoxLoad"/>
<comment userInput="Comment is added to preserve the step key for backward compatibility" stepKey="clickSearchTextButton"/>
<comment userInput="Comment is added to preserve the step key for backward compatibility" stepKey="waitForTextSearchLoad"/>
<see selector="{{StorefrontQuickSearchResultsSection.regularPrice}}" userInput="{{simpleProductDataOverriding.price}}" stepKey="seeUpdatedProductPriceOnStorefrontPageUnderStoreViewSection"/>
</test>
</tests>
Original file line number Diff line number Diff line change
Expand Up @@ -112,7 +112,6 @@
<actionGroup ref="AssertAdminProductIsAssignedToCategoryActionGroup" stepKey="seeSelectedCategories">
<argument name="categoryName" value="$$categoryEntity.name$$"/>
</actionGroup>

<scrollTo selector="{{AdminProductSEOSection.sectionHeader}}" x="0" y="-80" stepKey="scrollToAdminProductSEOSection1"/>
<click selector="{{AdminProductSEOSection.sectionHeader}}" stepKey="clickAdminProductSEOSection1"/>
<seeInField selector="{{AdminProductSEOSection.urlKeyInput}}" userInput="{{simpleProductTierPrice300InStock.urlKey}}" stepKey="seeUrlKey"/>
Expand Down Expand Up @@ -144,10 +143,15 @@
<!--Verify customer see updated simple product link on magento storefront page and is searchable by sku -->
<amOnPage url="{{StorefrontProductPage.url(simpleProductTierPrice300InStock.urlKey)}}" stepKey="goToMagentoStorefrontPage"/>
<waitForPageLoad stepKey="waitForStoreFrontProductPageLoad"/>
<fillField selector="{{StorefrontQuickSearchResultsSection.searchTextBox}}" userInput="{{simpleProductTierPrice300InStock.sku}}" stepKey="fillSimpleProductSkuInSearchTextBox"/>
<waitForPageLoad stepKey="waitForSearchTextBox"/>
<click selector="{{StorefrontQuickSearchResultsSection.searchTextBoxButton}}" stepKey="clickSearchTextBoxButton"/>
<waitForPageLoad stepKey="waitForSearch"/>
<see selector="{{StorefrontQuickSearchResultsSection.productLink}}" userInput="{{simpleProductTierPrice300InStock.name}}" stepKey="seeProductName"/>
<actionGroup ref="StorefrontCheckQuickSearchStringActionGroup" stepKey="fillSimpleProductSkuInSearchTextBox">
<argument name="phrase" value="{{simpleProductTierPrice300InStock.sku}}"/>
</actionGroup>
<comment userInput="Comment is added to preserve the step key for backward compatibility" stepKey="waitForSearchTextBox"/>
<comment userInput="Comment is added to preserve the step key for backward compatibility" stepKey="clickSearchTextBoxButton"/>
<comment userInput="Comment is added to preserve the step key for backward compatibility" stepKey="waitForSearch"/>
<actionGroup ref="StorefrontAssertProductNameOnProductMainPageActionGroup" stepKey="seeProductName">
<argument name="productName" value="{{simpleProductTierPrice300InStock.name}}"/>
</actionGroup>

</test>
</tests>
Original file line number Diff line number Diff line change
Expand Up @@ -81,10 +81,14 @@
<!--Verify customer don't see updated simple product link on magento storefront page -->
<amOnPage url="{{StorefrontProductPage.url(simpleProductDisabled.urlKey)}}" stepKey="goToMagentoStorefrontPage"/>
<waitForPageLoad stepKey="waitForStoreFrontProductPageLoad"/>
<fillField selector="{{StorefrontQuickSearchResultsSection.searchTextBox}}" userInput="{{simpleProductDisabled.sku}}" stepKey="fillSimpleProductSkuInSearchTextBox"/>
<waitForPageLoad stepKey="waitForSearchTextBox"/>
<click selector="{{StorefrontQuickSearchResultsSection.searchTextBoxButton}}" stepKey="clickSearchTextBoxButton"/>
<waitForPageLoad stepKey="waitForSearch"/>
<dontSee selector="{{StorefrontQuickSearchResultsSection.productLink}}" userInput="{{simpleProductDisabled.name}}" stepKey="dontSeeProductNameOnStorefrontPage"/>
<actionGroup ref="StorefrontCheckQuickSearchStringActionGroup" stepKey="fillSimpleProductSkuInSearchTextBox">
<argument name="phrase" value="{{simpleProductDisabled.sku}}"/>
</actionGroup>
<comment userInput="Comment is added to preserve the step key for backward compatibility" stepKey="waitForSearchTextBox"/>
<comment userInput="Comment is added to preserve the step key for backward compatibility" stepKey="clickSearchTextBoxButton"/>
<comment userInput="Comment is added to preserve the step key for backward compatibility" stepKey="waitForSearch"/>
<actionGroup ref="AssertStorefrontProductNameIsNotOnProductMainPageActionGroup" stepKey="dontSeeProductNameOnStorefrontPage">
<argument name="productName" value="{{simpleProductDisabled.name}}"/>
</actionGroup>
</test>
</tests>
Loading

0 comments on commit bff5a78

Please sign in to comment.