예제 #1
0
 def test_SuitableProductDetail(self):
     homePage = HomePage(self.driver)
     productDetail = ProductDetailPage(self.driver)
     # Type keywords
     homePage.setSearchKeyword(self.keyword)
     # Get all suggest keywords
     suggestKeyWords_list = homePage.getAllSuggestKeyWords()
     suggestKeyword_index = 0
     for suggestKeyword in suggestKeyWords_list:
         suggestKeyword_index += 1
         # Get single suggest keyword
         suggestKeyword_text = homePage.getSuggestKeyWord(
             suggestKeyword_index)
         # Click single suggest keyword
         homePage.clickSuggestKeyWord(suggestKeyword_index)
         # Get the title of product in product detail page
         productTitle = productDetail.getProductTitle()
         # Compare the title of product to the suggest keyword clicked
         self.assertIn(productTitle, suggestKeyword_text,
                       'Product tille is not match!')
         # Typing keyword again after compare the previous result
         if suggestKeyword_index < len(suggestKeyWords_list):
             homePage.setSearchKeyword(self.keyword)
         else:
             break
예제 #2
0
 def test_SuggestKeyWord(self):
     homePage = HomePage(self.driver)
     # Type keyword
     homePage.setSearchKeyword(self.keyword)
     # Get all suggest keywords
     suggestKeyWords_list = homePage.getAllSuggestKeyWords()
     # Check all suggest keywords
     for suggestKeyword in suggestKeyWords_list:
         self.assertIn(self.keyword, suggestKeyword.lower(),
                       'Suggest keyword is not suitable!')
예제 #3
0
 def test_TypeSearchKeyWord(self):
     homePage = HomePage(self.driver)
     # Send keyword to the input field
     homePage.setSearchKeyword(self.keyword)
     # Check the search Keyword after typing
     self.assertEqual(self.keyword, homePage.getSearchKeyword(),
                      "Do not automatically delete placeholder!")
     homePage.clearSearchKeyWord()
     # Check the placeholder after clearing the search keyword
     self.assertEqual(self.placehoder, homePage.getSearchPlaceHolder(),
                      'Placeholder is not match')
예제 #4
0
 def test_Search_fail(self):
     homePage = HomePage(self.driver)
     searchPage = SearchPage(self.driver)
     # Typing keyword
     homePage.setSearchKeyword(self.keyword_fail)
     # Click search button
     homePage.clickSearchButton()
     # Get message when there is no result
     searchNoResultMessage = searchPage.getSearchNoResultMessage()
     self.assertIn('No results were found for your search',
                   searchNoResultMessage, 'Something went wrong!')
예제 #5
0
 def test_ProductPrice(self):
     homePage = HomePage(self.driver)
     # Typing keyword
     homePage.setSearchKeyword(self.keyword)
     # Click Search Button
     homePage.clickSearchButton()
     searchPage = SearchPage(self.driver)
     # Get all products result
     allProductResult = searchPage.getAllProductsResult()
     for i in range(1, len(allProductResult) + 1):
         productPrice = searchPage.getProductPrice(i)
         # Check the existence of product price
         self.assertNotEqual('', productPrice, "Product price is empty!")
예제 #6
0
 def test_ProductQuantity(self):
     homePage = HomePage(self.driver)
     # Typing keyword
     homePage.setSearchKeyword(self.keyword)
     # Click search button
     homePage.clickSearchButton()
     searchPage = SearchPage(self.driver)
     # Get result message after searching
     searchResultMessage = searchPage.getSearchResultMessage().split()
     # Get product quantity in result message
     productQuantityMessage = int(searchResultMessage[0])
     # Get quantity of products
     productsResultQuantity = searchPage.getProductsResultQuantity()
     # Compare quantity of products to product quantity in result message
     self.assertEqual(
         productQuantityMessage, productsResultQuantity,
         'The reality quantity of products result is not match with message!'
     )