diff --git a/app/code/Magento/Wishlist/Controller/Index/Update.php b/app/code/Magento/Wishlist/Controller/Index/Update.php
index a79e4aa95ffc59a0f92a0f2d017953caf21d4312..cc3f222c83065cf0bc3e222d5fda2d3bc1026c74 100644
--- a/app/code/Magento/Wishlist/Controller/Index/Update.php
+++ b/app/code/Magento/Wishlist/Controller/Index/Update.php
@@ -83,8 +83,6 @@ class Update extends \Magento\Wishlist\Controller\AbstractIndex
                 )->defaultCommentString()
                 ) {
                     $description = '';
-                } elseif (!strlen($description)) {
-                    $description = $item->getDescription();
                 }
 
                 $qty = null;
diff --git a/dev/tests/integration/testsuite/Magento/Wishlist/Controller/UpdateTest.php b/dev/tests/integration/testsuite/Magento/Wishlist/Controller/UpdateTest.php
new file mode 100644
index 0000000000000000000000000000000000000000..48f738763b67215fcaf3f997c9ab0f357b089f07
--- /dev/null
+++ b/dev/tests/integration/testsuite/Magento/Wishlist/Controller/UpdateTest.php
@@ -0,0 +1,150 @@
+<?php
+/**
+ * Copyright © Magento, Inc. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+
+namespace Magento\Wishlist\Controller;
+
+use Magento\Customer\Api\AccountManagementInterface;
+use Magento\Customer\Helper\View;
+use Magento\Customer\Model\Customer;
+use Magento\Customer\Model\Session;
+use Magento\Framework\Data\Form\FormKey;
+use Magento\Framework\Message\ManagerInterface;
+use Magento\Wishlist\Model\Item;
+use Magento\Wishlist\Model\Wishlist;
+use Psr\Log\LoggerInterface;
+use Zend\Http\Request;
+
+/**
+ * Tests updating wishlist item comment.
+ *
+ * @magentoAppIsolation enabled
+ * @magentoDbIsolation enabled
+ * @magentoAppArea frontend
+ */
+class UpdateTest extends \Magento\TestFramework\TestCase\AbstractController
+{
+    /**
+     * @var Session
+     */
+    private $customerSession;
+
+    /**
+     * @var ManagerInterface
+     */
+    private $messages;
+
+    /**
+     * @var View
+     */
+    private $customerViewHelper;
+
+    /**
+     * Description field value for wishlist item.
+     *
+     * @var string
+     */
+    private $description = 'some description';
+
+    /**
+     * Tests updating wishlist item comment.
+     *
+     * @magentoDataFixture Magento/Wishlist/_files/wishlist.php
+     * @dataProvider commentDataProvider
+     * @param string|null $postDescription
+     * @param string $expectedResult
+     * @param boolean $presetComment
+     */
+    public function testUpdateComment($postDescription, $expectedResult, $presetComment)
+    {
+        /** @var Customer $customer */
+        $customer = $this->customerSession->getCustomer();
+        /** @var Wishlist $wishlist */
+        $wishlist = $this->_objectManager
+            ->get(Wishlist::class)
+            ->loadByCustomerId($customer->getId(), true);
+        /** @var Item $item */
+        $item = $wishlist->getItemCollection()->getFirstItem();
+
+        if ($presetComment) {
+            $item->setDescription($this->description);
+            $item->save();
+        }
+
+        $formKey = $this->_objectManager->get(FormKey::class);
+        $this->getRequest()->setPostValue(
+            [
+                'description' => isset($postDescription) ? [$item->getId() => $postDescription] : [],
+                'qty' => isset($postDescription) ? [$item->getId() => 1] : [],
+                'do' => '',
+                'form_key' => $formKey->getFormKey()
+            ]
+        )->setMethod(Request::METHOD_POST);
+        $this->dispatch('wishlist/index/update/wishlist_id/' . $wishlist->getId());
+
+        // Reload item
+        $item = $this->_objectManager->get(Item::class)->load($item->getId());
+        self::assertEquals(
+            $expectedResult,
+            $item->getDescription()
+        );
+    }
+
+    /**
+     * Data provider for testUpdateComment.
+     *
+     * @return array
+     */
+    public function commentDataProvider()
+    {
+
+        return [
+            'test adding comment' => [
+                'postDescription' => $this->description,
+                'expectedResult' => $this->description,
+                'presetComment' => false
+            ],
+            'test removing comment' => [
+                'postDescription' => '',
+                'expectedResult' => '',
+                'presetComment' => true
+            ],
+            'test not changing comment' => [
+                'postDescription' => null,
+                'expectedResult' => $this->description,
+                'presetComment' => true
+            ],
+        ];
+    }
+
+    protected function setUp()
+    {
+        parent::setUp();
+        $logger = $this->createMock(LoggerInterface::class);
+        $this->customerSession = $this->_objectManager->get(
+            Session::class,
+            [$logger]
+        );
+        /** @var AccountManagementInterface $service */
+        $service = $this->_objectManager->create(
+            AccountManagementInterface::class
+        );
+        $customer = $service->authenticate('customer@example.com', 'password');
+        $this->customerSession->setCustomerDataAsLoggedIn($customer);
+
+        $this->customerViewHelper = $this->_objectManager->create(View::class);
+
+        $this->messages = $this->_objectManager->get(
+            ManagerInterface::class
+        );
+    }
+
+    protected function tearDown()
+    {
+        $this->customerSession->logout();
+        $this->customerSession = null;
+        parent::tearDown();
+    }
+}