Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Adding search #282

Merged
merged 14 commits into from
Jun 30, 2022
Merged

Adding search #282

merged 14 commits into from
Jun 30, 2022

Conversation

markvanaalst
Copy link
Collaborator

Description

Adding search implementation to dev portal

Motivation

PR to test and gather feedback before pushing to production
Closing #265 #102

How Has This Been Tested?

Local and Vercel

Types of changes

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to change)
  • Documentation update (non-breaking change; modified files are limited to the /data directory or other markdown files)

Checklist:

  • I have read the Contributing guide.
  • My code/comments/docs fully adhere to the Code of Conduct.
  • My change is a code change.
  • My change is a documentation change and there are NO other updates required.
  • My change is a documentation change and it requires an update to the navigation.
  • My change has new or updated images which are stored in the /public/images folder that need to be migrated to Sitecore DAM

@markvanaalst markvanaalst added the enhancement New feature or request label Jun 28, 2022
@github-actions github-actions bot temporarily deployed to Preview June 28, 2022 10:50 Inactive
@markvanaalst
Copy link
Collaborator Author

markvanaalst commented Jun 28, 2022

@jst-cyr could you please test search from a technical/functional perspective? There is still some work to be done on the indexing side but I will start a separate thread for that

Copy link
Contributor

@jst-cyr jst-cyr left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Testing results (used https://developer-portal-ms2w6zd3h-sitecoretechnicalmarketing.vercel.app/search#q=commerce). Many tests passed, but some still require attention.

🟥1. TEST: On home page, entered 'commerce' and hit return.
EXPECTED: Search results should display with Commerce-related content, with Developer Portal content prioritized. Each result should display a short blurb about the page.
ACTUAL: Results are displayed, but Developer Portal results seem to have "Support Portal" shown at the beginning of the blurb, which is not on those pages (other than in the 'popup' menu for external links in the header). This is likely a crawling/indexing issue? I'm not certain that content should be included in the crawl.

🟥2. TEST: Searched for 'commerce' from the headless page (content-management/headless)
EXPECTED: Same results, redirected to search page.
ACTUAL: Same results (same issue as in first test)

🟩3. TEST: From search results page, changed keywords in the text box to commerce powershell.
EXPECTED: Search results should change and look for content that matches to both keywords.
ACTUAL: PASS

🟩4. TEST: From the search results page, changed the keywords in the URL to /search#q=exm%20powershell and then pressed Enter.
EXPECTED: Should get new search results that match EXM and PowerShell keywords
ACTUAL: PASS

🟥5. TEST: From search results, changed sort from Relevance to Date Ascending
EXPECTED: Search results should update and oldest results should display first
ACTUAL: The drop-down resets to 'Relevance' on the page, even though the URL changes to have the new search criteria. Search results change a little, but hard to tell if correct. Not many results with dates.

🟩6. TEST: From search results, navigate to the second page of results.
EXPECTED: A new list of results should be shown
ACTUAL: PASS

🟥7. TEST: Search for xdb and select the "Sitecore Stack Exchange" filter.
**EXPECTED: All search results for 'xdb' on Sitecore Stack Exchange are shown
ACTUAL: A single result is shown. Facets also show only 1 result. There should be many results that are returned, not just the home page.

🟥8. TEST: Change the sorting to Ascending and then back to Relevance
EXPECTED: Querystring should update for the sort criteria
ACTUAL: The drop-down does not change after selecting. First change to 'ascending' changes the URL, but selecting 'Relevance' does not clear or update this sort criteria. Cannot go back without editing the URL or navigating away to another page.

🟩9. TEST: Search for xdb and then select a filter. After selecting a filter, press the "Clear All" link on the search results page
EXPECTED: Filters should be removed and all search results displayed that match the keyword
ACTUAL: PASS

🟩10. TEST: Search for xdb and then select a 'Site' filter. Apply a second 'Site' filter.
EXPECTED: After first filter application, results should be limited to that filter. Facet counts for other types of facets should update to show matching. Selecting a second filter should expand the results. Facet counts should update again.
ACTUAL: PASS

🟥11. TEST: Search for xdb and then change sorting to 'Sort Ascending'. Edit the query to change the query string to /search#q=xdb&sortCriteria=type%20ascending
EXPECTED: The invalid sort should be ignored and the page should default to Relevance sorting.
ACTUAL: No results are displayed.

🟩12. TEST: Search for xdb. On the first page of search results, press the < arrow to navigate to the previous page
EXPECTED: The < arrow should either not display, be disabled, or do nothing.
ACTUAL: PASS (Arrow is shown and appears enabled as a link, but does nothing)

🟩13. TEST: Search for jason and select the Documentation Site filter. Click on the > arrow to navigate to the next page.
EXPECTED: In this scenario there should be only one page of results. The > arrow should either not display, be disabled, or do nothing
ACTUAL: PASS (Arrow is shown and appears enabled as a link, but does nothing)

🟩14. TEST: From the search results page, clear any existing keywords in the search box and press enter
EXPECTED: All possible search results should display with appropriate facet counts
ACTUAL: PASS

🟩15. TEST: Enter a word that should have no results in English (such as müde) and press enter
EXPECTED: No results should display
ACTUAL: PASS

🟩16. TEST: Enter a word that should have results (e.g. jason) but replace a character with an umlaut (such as jäson).
EXPECTED: The same results for jason should display
ACTUAL: PASS

🟥17. TEST: Enter keywords into the search box (example: xdb). Change sorting to Date ascending. Put cursor in keywords box and press enter (with no changes to the keywords)
**EXPECTED: The original search results and sorting should be shown as if this was a new search.
ACTUAL: The sort preference selected is kept, it does not 'clear' as if this is a new search.

🟥18. TEST: Enter keywords into the search box (example: xdb). Change sorting to Date ascending. Put cursor in keywords box, change the word to 'jason' and press enter
**EXPECTED: The search results should display for 'jason', with no sorting applied.
ACTUAL: The sort preference selected is kept, it does not 'clear' as if this is a new search.

🟩19. TEST: Use an incredibly long keyword that should test buffer/memory constraints (> 1 million characters). Press enter.
EXPECTED: The page should gracefully handle the large image and show no results (or all results with the keyword field cleared)
ACTUAL: PASS

❓20. TEST: Use many keywords in a search separated by a space (example: 'jason xdb doc exm container sitecore docker xconnect commerce discover ordercloud send content headless jss moosend api email install download developer trial'
EXPECTED: Results that match some of the words should be displayed, with most relevant first
ACTUAL: No results are displayed (could be the actual Coveo functionality that is expected, just not what I expected as a user)

🟩21. TEST: Search with keywords that are only special characters (example: &^%#@!#@$!#$!@#()&)
EXPECTED: Characters should be ignored and all results shown
ACTUAL: PASS

🟩22. TEST: Search with a mixture of special characters and real keywords (example: jason || xdb)
EXPECTED: Special characters should be ignored and search executed as if they were not there.
ACTUAL: PASS

🟩23. TEST: Enter a specific title from a newsletter item (what's new on the developer portal) as the keywords
EXPECTED: Results should be sorted by relevance based on all the words.
ACTUAL: PASS

🟩24. TEST: Enter a specific title from a newsletter item with quotes ("what's new on the developer portal") as the keywords
EXPECTED: The newsletter should come back as the most relevant, ahead of other "what's new" content, or as the only result
ACTUAL: PASS

@github-actions github-actions bot temporarily deployed to Preview June 29, 2022 13:02 Inactive
@github-actions github-actions bot temporarily deployed to Preview June 29, 2022 17:35 Inactive
@markvanaalst
Copy link
Collaborator Author

markvanaalst commented Jun 30, 2022

Thanks for the extensive testing @jst-cyr!

As discussed I have removed the sorting functionality. I created separate issues that are related to Coveo configuration (#286 #287 #288) that we can resolve the coming days/weeks

@markvanaalst markvanaalst marked this pull request as ready for review June 30, 2022 08:10
@github-actions github-actions bot temporarily deployed to Preview June 30, 2022 08:47 Inactive
Copy link
Contributor

@jst-cyr jst-cyr left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks great! I reran all tests, and previously passed tests still pass. Failed tests are either fixed, removed (i.e. sort was removed), or have been logged as separate non-blocking issues for configuration.

@jst-cyr jst-cyr merged commit a8d2a57 into main Jun 30, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants