Skip to content

Commit c33bb8e

Browse files
committed
MC-36425: “Select Shipping Method” page of Multishipping Checkout is corrupted if a Customer use “go back” browser button to return to the page
1 parent a857a79 commit c33bb8e

15 files changed

+251
-13
lines changed

app/code/Magento/LoginAsCustomer/Test/Mftf/Test/AdminLoginAsCustomerMultishippingLoggingTest.xml

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -23,14 +23,17 @@
2323
</annotations>
2424

2525
<before>
26-
<magentoCLI command="config:set {{EnableFreeShippingMethod.path}} {{EnableFreeShippingMethod.value}}" stepKey="enableFreeShipping"/>
27-
<magentoCLI command="config:set {{EnableFlatRateShippingMethod.path}} {{EnableFlatRateShippingMethod.value}}" stepKey="enableFlatRateShipping"/>
28-
<magentoCLI command="config:set {{EnableCheckMoneyOrderPaymentMethod.path}} {{EnableCheckMoneyOrderPaymentMethod.value}}" stepKey="enableCheckMoneyOrderPaymentMethod"/>
26+
<actionGroup ref="CliEnableFreeShippingMethodActionGroup" stepKey="enableFreeShipping"/>
27+
<actionGroup ref="CliEnableFlatRateShippingMethodActionGroup" stepKey="enableFlatRateShipping"/>
28+
<actionGroup ref="CliEnableCheckMoneyOrderPaymentMethodActionGroup" stepKey="enableCheckMoneyOrderPaymentMethod"/>
2929
<magentoCLI command="config:set {{LoginAsCustomerConfigDataEnabled.path}} 1"
3030
stepKey="enableLoginAsCustomer"/>
3131
<magentoCLI command="config:set {{LoginAsCustomerStoreViewLogin.path}} 0"
3232
stepKey="enableLoginAsCustomerAutoDetection"/>
33-
<magentoCLI command="cache:flush config" stepKey="flushCacheBeforeTestRun"/>
33+
<actionGroup ref="CliCacheFlushActionGroup" stepKey="flushCacheBeforeTestRun">
34+
<argument name="tags" value="config"/>
35+
</actionGroup>
36+
3437
<createData entity="SimpleProduct2" stepKey="createProduct1"/>
3538
<createData entity="SimpleProduct2" stepKey="createProduct2"/>
3639
<createData entity="Simple_US_Customer_Assistance_Allowed_Two_Addresses" stepKey="createCustomer"/>
@@ -43,7 +46,7 @@
4346
<deleteData createDataKey="createCustomer" stepKey="deleteCustomer"/>
4447
<actionGroup ref="AdminOrdersGridClearFiltersActionGroup" stepKey="clearAllOrdersGridFilters"/>
4548
<actionGroup ref="AdminLogoutActionGroup" stepKey="adminLogout"/>
46-
<magentoCLI command="config:set {{DisableFreeShippingMethod.path}} {{DisableFreeShippingMethod.value}}" stepKey="disableFreeShipping"/>
49+
<actionGroup ref="CliDisableFreeShippingMethodActionGroup" stepKey="disableFreeShipping"/>
4750
<magentoCLI command="cache:flush config" stepKey="flushCacheAfterTestRun"/>
4851
</after>
4952

Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
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="StorefrontNavigateToShippingInformationPageActionGroup">
12+
<annotations>
13+
<description>Navigate to shipping information page. Starts on multishipping addressees page.</description>
14+
</annotations>
15+
16+
<waitForElementVisible selector="{{SingleShippingSection.goToShippingInfo}}" stepKey="waitForButton"/>
17+
<click selector="{{SingleShippingSection.goToShippingInfo}}" stepKey="goToShippingInformation"/>
18+
<waitForPageLoad stepKey="waitForShippingInfoPage"/>
19+
</actionGroup>
20+
</actionGroups>
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
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="StorefrontSelectMultipleAddressesOnCheckoutActionGroup">
12+
<annotations>
13+
<description>Select addresses for multinshipping checkout. Start on multishipping addresses page.</description>
14+
</annotations>
15+
<arguments>
16+
<argument name="addressOption1" type="string" defaultValue="1"/>
17+
<argument name="addressOption2" type="string" defaultValue="2"/>
18+
</arguments>
19+
20+
<waitForElementVisible selector="{{MultishippingSection.shippingAddressOptions(addressOption1,addressOption1)}}" stepKey="waitForMultishippingPage"/>
21+
<grabTextFrom selector="{{MultishippingSection.shippingAddressOptions(addressOption1,addressOption1)}}" stepKey="firstShippingAddressValue"/>
22+
<selectOption selector="{{MultishippingSection.shippingAddressSelector(addressOption1)}}" userInput="{$firstShippingAddressValue}" stepKey="selectFirstShippingMethod"/>
23+
<waitForPageLoad after="selectFirstShippingMethod" stepKey="waitForSecondShippingAddresses"/>
24+
<grabTextFrom selector="{{MultishippingSection.shippingAddressOptions(addressOption2,addressOption2)}}" stepKey="secondShippingAddressValue"/>
25+
<selectOption selector="{{MultishippingSection.shippingAddressSelector(addressOption2)}}" userInput="{$secondShippingAddressValue}" stepKey="selectSecondShippingMethod"/>
26+
<click selector="{{SingleShippingSection.updateAddress}}" stepKey="clickOnUpdateAddress"/>
27+
<waitForPageLoad stepKey="waitForShippingInformation"/>
28+
</actionGroup>
29+
</actionGroups>

app/code/Magento/Multishipping/Test/Mftf/Test/StoreFrontCheckingWithMultishipmentTest.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@
3030
<createData entity="Simple_US_Customer_Two_Addresses" stepKey="customer"/>
3131
<createData entity="FreeShippinMethodConfig" stepKey="enableFreeShipping"/>
3232
<createData entity="FlatRateShippingMethodConfig" stepKey="enableFlatRateShipping"/>
33-
<magentoCLI command="config:set {{EnableCheckMoneyOrderPaymentMethod.path}} {{EnableCheckMoneyOrderPaymentMethod.value}}" stepKey="enableCheckMoneyOrderPaymentMethod"/>
33+
<actionGroup ref="CliEnableCheckMoneyOrderPaymentMethodActionGroup" stepKey="enableCheckMoneyOrderPaymentMethod"/>
3434
<actionGroup ref="AdminLoginActionGroup" stepKey="loginAsAdmin"/>
3535
<actionGroup ref="LoginToStorefrontActionGroup" stepKey="loginToStorefrontAccount">
3636
<argument name="Customer" value="$$customer$$"/>

app/code/Magento/Multishipping/Test/Mftf/Test/StoreFrontCheckingWithSingleShipmentTest.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@
3030
<createData entity="Simple_US_Customer_Two_Addresses" stepKey="customer"/>
3131
<createData entity="FreeShippinMethodConfig" stepKey="enableFreeShipping"/>
3232
<createData entity="FlatRateShippingMethodConfig" stepKey="enableFlatRateShipping"/>
33-
<magentoCLI command="config:set {{EnableCheckMoneyOrderPaymentMethod.path}} {{EnableCheckMoneyOrderPaymentMethod.value}}" stepKey="enableCheckMoneyOrderPaymentMethod"/>
33+
<actionGroup ref="CliEnableCheckMoneyOrderPaymentMethodActionGroup" stepKey="enableCheckMoneyOrderPaymentMethod"/>
3434
<actionGroup ref="AdminLoginActionGroup" stepKey="loginAsAdmin"/>
3535
<actionGroup ref="LoginToStorefrontActionGroup" stepKey="loginToStorefrontAccount">
3636
<argument name="Customer" value="$$customer$$"/>

app/code/Magento/Multishipping/Test/Mftf/Test/StoreFrontMinicartWithMultishipmentTest.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@
3030
<createData entity="Simple_US_Customer_Two_Addresses" stepKey="customer"/>
3131
<createData entity="FreeShippinMethodConfig" stepKey="enableFreeShipping"/>
3232
<createData entity="FlatRateShippingMethodConfig" stepKey="enableFlatRateShipping"/>
33-
<magentoCLI command="config:set {{EnableCheckMoneyOrderPaymentMethod.path}} {{EnableCheckMoneyOrderPaymentMethod.value}}" stepKey="enableCheckMoneyOrderPaymentMethod"/>
33+
<actionGroup ref="CliEnableCheckMoneyOrderPaymentMethodActionGroup" stepKey="enableCheckMoneyOrderPaymentMethod"/>
3434
<actionGroup ref="AdminLoginActionGroup" stepKey="loginAsAdmin"/>
3535
<actionGroup ref="LoginToStorefrontActionGroup" stepKey="loginToStorefrontAccount">
3636
<argument name="Customer" value="$$customer$$"/>
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,78 @@
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="StorefrontCreateOrderWithMultishippingAfterReturningToCartTest">
12+
<annotations>
13+
<features value="Multishipping"/>
14+
<stories value="Checkout with multiple addresses."/>
15+
<title value="Checkout with multiple addresses after returning on cart page during checkout."/>
16+
<description value="Verify customer able to checkout with multiple addresses after returning to cart page and continue checkout with browser 'back' button."/>
17+
<severity value="AVERAGE"/>
18+
<testCaseId value="MC-39583"/>
19+
<useCaseId value="MC-36425"/>
20+
<group value="multishipping"/>
21+
</annotations>
22+
23+
<before>
24+
<!--Create test data.-->
25+
<createData entity="SimpleProduct2" stepKey="product"/>
26+
<createData entity="Simple_US_Customer_Two_Addresses" stepKey="customer"/>
27+
<!--Set up configuration.-->
28+
<actionGroup ref="CliEnableFreeShippingMethodActionGroup" stepKey="enableFreeShipping"/>
29+
<actionGroup ref="CliEnableFlatRateShippingMethodActionGroup" stepKey="enableFlatRateShipping"/>
30+
<actionGroup ref="CliEnableCheckMoneyOrderPaymentMethodActionGroup" stepKey="enableCheckMoneyOrderPaymentMethod"/>
31+
</before>
32+
33+
<after>
34+
<!--Clean up test data, revert configuration.-->
35+
<deleteData createDataKey="product" stepKey="deleteProduct"/>
36+
<actionGroup ref="StorefrontCustomerLogoutActionGroup" stepKey="customerLogoutStorefront"/>
37+
<deleteData createDataKey="customer" stepKey="deleteCustomer"/>
38+
<actionGroup ref="CliDisableFreeShippingMethodActionGroup" stepKey="disableFreeShipping"/>
39+
</after>
40+
41+
<!--Add product to cart and proceed to multishipping checkout. -->
42+
<actionGroup ref="LoginToStorefrontActionGroup" stepKey="loginToStorefrontAccount">
43+
<argument name="Customer" value="$$customer$$"/>
44+
</actionGroup>
45+
<actionGroup ref="StorefrontOpenProductPageActionGroup" stepKey="navigateToProductPage">
46+
<argument name="productUrl" value="$product.custom_attributes[url_key]$"/>
47+
</actionGroup>
48+
<actionGroup ref="AddProductWithQtyToCartFromStorefrontProductPageActionGroup" stepKey="addProductToCart">
49+
<argument name="productName" value="$product.name$"/>
50+
<argument name="productQty" value="2"/>
51+
</actionGroup>
52+
<actionGroup ref="StorefrontOpenCartFromMinicartActionGroup" stepKey="openCart"/>
53+
<actionGroup ref="CheckingWithMultipleAddressesActionGroup" stepKey="checkoutWithMultipleAddresses"/>
54+
<actionGroup ref="SelectMultiShippingInfoActionGroup" stepKey="checkoutWithMultipleShipping"/>
55+
<waitForPageLoad stepKey="waitForShippingInfoPage"/>
56+
<!--Open cart page before place order.-->
57+
<actionGroup ref="StorefrontCartPageOpenActionGroup" stepKey="navigateToCartPage"/>
58+
<waitForPageLoad stepKey="waitForCartPageLoad"/>
59+
<!--Go back to continue checkout with multiple addresses again.-->
60+
<moveBack stepKey="navigateBackToMultishippingCheckout"/>
61+
<actionGroup ref="StorefrontSelectMultipleAddressesOnCheckoutActionGroup" stepKey="selectAddresses"/>
62+
<actionGroup ref="StorefrontNavigateToShippingInformationPageActionGroup" stepKey="navigateToShippingInformationPage"/>
63+
<actionGroup ref="SelectMultiShippingInfoActionGroup" stepKey="checkoutWithMultipleShippingAgain"/>
64+
<actionGroup ref="CheckoutSelectCheckMoneyOrderPaymentActionGroup" stepKey="selectCheckMoneyPaymentAgain"/>
65+
<actionGroup ref="SelectBillingInfoActionGroup" stepKey="checkoutWithPaymentMethodAgain"/>
66+
<actionGroup ref="ReviewOrderForMultiShipmentActionGroup" stepKey="reviewOrderForMultiShipment">
67+
<argument name="totalNameForFirstOrder" value="Shipping &amp; Handling"/>
68+
<argument name="totalPositionForFirstOrder" value="1"/>
69+
<argument name="totalNameForSecondOrder" value="Shipping &amp; Handling"/>
70+
<argument name="totalPositionForSecondOrder" value="2"/>
71+
</actionGroup>
72+
<waitForPageLoad stepKey="waitForPlaceOrderPageLoad"/>
73+
<actionGroup ref="StorefrontPlaceOrderForMultipleAddressesActionGroup" stepKey="placeOrder">
74+
<argument name="firstOrderPosition" value="1"/>
75+
<argument name="secondOrderPosition" value="2"/>
76+
</actionGroup>
77+
</test>
78+
</tests>

app/code/Magento/Multishipping/Test/Mftf/Test/StorefrontOrderWithMultishippingTest.xml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -27,9 +27,9 @@
2727
<createData entity="SimpleProduct2" stepKey="createProduct2"/>
2828
<createData entity="Simple_US_Customer_Two_Addresses" stepKey="createCustomer"/>
2929
<!-- Set configurations -->
30-
<magentoCLI command="config:set {{EnableFreeShippingMethod.path}} {{EnableFreeShippingMethod.value}}" stepKey="enableFreeShipping"/>
31-
<magentoCLI command="config:set {{EnableFlatRateShippingMethod.path}} {{EnableFlatRateShippingMethod.value}}" stepKey="enableFlatRateShipping"/>
32-
<magentoCLI command="config:set {{EnableCheckMoneyOrderPaymentMethod.path}} {{EnableCheckMoneyOrderPaymentMethod.value}}" stepKey="enableCheckMoneyOrderPaymentMethod"/>
30+
<actionGroup ref="CliEnableFreeShippingMethodActionGroup" stepKey="enableFreeShipping"/>
31+
<actionGroup ref="CliEnableFlatRateShippingMethodActionGroup" stepKey="enableFlatRateShipping"/>
32+
<actionGroup ref="CliEnableCheckMoneyOrderPaymentMethodActionGroup" stepKey="enableCheckMoneyOrderPaymentMethod"/>
3333
<actionGroup ref="AdminLoginActionGroup" stepKey="loginAsAdmin"/>
3434
<actionGroup ref="LoginToStorefrontActionGroup" stepKey="loginToStorefrontAccount">
3535
<argument name="Customer" value="$$createCustomer$$"/>
@@ -42,7 +42,7 @@
4242
<!-- Need logout before customer delete. Fatal error appears otherwise -->
4343
<actionGroup ref="StorefrontCustomerLogoutActionGroup" stepKey="customerLogout"/>
4444
<deleteData createDataKey="createCustomer" stepKey="deleteCustomer"/>
45-
<magentoCLI command="config:set {{DisableFreeShippingMethod.path}} {{DisableFreeShippingMethod.value}}" stepKey="disableFreeShipping"/>
45+
<actionGroup ref="CliDisableFreeShippingMethodActionGroup" stepKey="disableFreeShipping"/>
4646
<actionGroup ref="AdminOrdersGridClearFiltersActionGroup" stepKey="clearAllOrdersGridFilters"/>
4747
<actionGroup ref="AdminLogoutActionGroup" stepKey="logoutFromAdmin"/>
4848
</after>
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
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="CliDisableCheckMoneyOrderPaymentMethodActionGroup">
12+
<annotations>
13+
<description>Disable Check/Money order payment method by CLI command config:set</description>
14+
</annotations>
15+
16+
<magentoCLI command="config:set {{DisableCheckMoneyOrderPaymentMethod.path}} {{DisableCheckMoneyOrderPaymentMethod.value}}" stepKey="disableCheckMoneyOrderPaymentMethod"/>
17+
</actionGroup>
18+
</actionGroups>
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
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="CliEnableCheckMoneyOrderPaymentMethodActionGroup">
12+
<annotations>
13+
<description>Enable Check/Money order payment method by CLI command config:set</description>
14+
</annotations>
15+
16+
<magentoCLI command="config:set {{EnableCheckMoneyOrderPaymentMethod.path}} {{EnableCheckMoneyOrderPaymentMethod.value}}" stepKey="enableCheckMoneyOrderPaymentMethod"/>
17+
</actionGroup>
18+
</actionGroups>

0 commit comments

Comments
 (0)