Super Speedy Search testing

Testing › Super Speedy Search

Last full run: version 5.100.1 · 11 November 2026

Summary

Super Speedy Search has one registered test suite that makes up its release run: 283 tests in 44 groups. This page describes that suite, grouped by what it protects you from, and the result of the last full run. Every group runs on a WordPress test site with WooCommerce and HPOS order storage switched on. Each group resets the site, creates real products, posts or orders, rebuilds the search index and then searches the way a visitor or shop manager would: the search results page, the search-as-you-type dropdown, the WooCommerce admin screens and WP-CLI.

The dropdown can answer through normal REST requests or through Fast Ajax, which loads only the plugins you choose. Both must return the same results for the same visitor, so many tests run each search both ways and compare the answers byte for byte.

The release run

SuiteWhat it provesHow it runs
Finding the right productsTitle and SKU searches find the right product: exact, partial and strict SKUs, short words, quoted phrases, punctuation, apostrophes and brackets in titles, and every sort order. Equal scores come back in the same order every time. Odd input such as control characters, negative page numbers and very long punctuation cannot cause a database error. Products added, edited or deleted are found or dropped without a rebuild, and a rebuild gives the same results as those live updates.Search results page, REST and WP-CLI
Ranking rulesWeights for custom fields and categories raise and lower the right results, including greater-than, less-than, date and decimal rules. Changing a rule takes effect without a rebuild, and a deleted category cannot break it. Category metadata written by other plugins, such as image URLs and SEO title templates, is kept out of matches while human text still matches.Search results page, REST and browser
Product variationsEach variation setting: variations off, rolled up into the parent product, shown on their own, or the first matching variation as the tile, preferring one in stock. A search for “red dress” shows the red variation near the top, scored by its own attributes. Large catalogues stay correct beyond the candidate limit, and Super Speedy Filters’ filtered variations and back-order settings work alongside Search.Search results page, REST and WP-CLI
Search box, dropdown and suggestionsA search box on a product or category page searches within that category when set to. Posts and products mix only when you ask for it, and a theme cannot change the number of results per page. Category, attribute and combination suggestions match exactly, and an older suggestions table keeps working until it is rebuilt. A real browser types into the dropdown and checks the list and grid layouts it renders.Browser, REST and Fast Ajax
Fast Ajax and cachingWith Fast Ajax on and off, every search endpoint returns the same results. Only the plugins you select load, plain permalinks fall back safely, and an out-of-date helper left by an older version is replaced. Cached results are kept separate by sort order, category, page and setting, and the Clear button empties the cache.REST, Fast Ajax and browser
Who sees whatGuests and customers never see out-of-stock or catalogue-hidden products when you hide them, while a shop manager still can. Categories hidden with Ultimate Category Excluder stay hidden in results, the dropdown and cached answers. Logged-in visibility through the dropdown is off until you opt in, and public cached answers never carry one user’s view to another.Search results page, REST, Fast Ajax and browser
WooCommerce orders and admin searchWooCommerce > Orders search on HPOS finds orders by customer name, email, transaction ID and purchased product, using the search index, with correct paging and date sorting across 5,001 orders. An edited transaction ID is found without a rebuild. New orders are indexed on databases with mixed collations. Product search in wp-admin finds titles and SKUs.Browser, WooCommerce admin and WP-CLI
Keeping the index up to dateThe rebuild commands and admin buttons rebuild what they say and leave existing suggestions alone when they should. Only one background rebuild can run at a time, and WP-CLI can take over one that is running. The weekly scheduled rebuild runs from a real cron request, and a schedule you switched off runs nothing. A rebuild started by Super Speedy Imports finishes and keeps your suggestions.WP-CLI, wp-admin and WordPress cron
Ranking CoachAn administrator previews a ranking change privately, applies it and undoes it: weights, bonuses, multipliers and promoting one result above another, including for variations and non-product post types. Previews do not save anything, stale responses cannot be applied, and guests, subscribers and bad requests cannot use it. The controls work by keyboard and fit on a phone screen.Browser, with real clicks
Integrations and reported issuesSearch analytics counts, sorting and deleting. Polylang language scoping. The read-only MCP abilities and their permissions. External Images in the dropdown, dropdown prices in your currency format, and settings help links. Each of these began as a bug report or a feature with a known risk.Browser, REST, Fast Ajax and MCP
Upgrading from older versionsSites with code, templates, cron jobs or cached pages written for older versions keep working: old function and class names, old REST addresses, old WP-CLI commands, theme template overrides and pages cached before the rename.WP-CLI, REST and browser

Last full run: version 5.100.1

Run on 11 November 2026 against the paid plugin, with WooCommerce 10.5.3 and HPOS.

SuiteResult
Finding the right products58 of 58 passed
Ranking rules28 of 28 passed
Product variations25 of 25 passed
Search box, dropdown and suggestions28 of 28 passed
Fast Ajax and caching33 of 33 passed
Who sees what19 of 20 passed. The one failure was in the test itself, not the plugin; the test was fixed and its group passed 5 of 5 when re-run (below)
WooCommerce orders and admin search12 of 12 passed
Keeping the index up to date20 of 20 passed
Ranking Coach33 of 33 passed
Integrations and reported issues18 of 18 passed
Upgrading from older versions8 of 8 passed
Total282 of 283 passed

The run was made in two parts. The first part stopped before the variations group that installs Super Speedy Filters, because our test machine’s copy of a library shared by both plugins was out of date. That was fixed on the machine, with no change to either plugin, and the remaining 185 tests were run from that group onwards.

The one failure, and its fix

One test failed: the test that compares Fast Ajax with normal REST for guests, customers and shop managers. Part of it sends a search the dropdown cannot route and expects “not found” from both. The search it used contained a full stop. Since version 5.99.1 the dropdown accepts full stops on purpose, so that searches such as “1.5m” work, and another test in the suite requires exactly that. Both transports correctly returned the same empty result instead of “not found”, so the old test failed while the plugin behaved as intended.

The test now uses a character the dropdown still cannot route, which returns “not found” on both transports for every visitor. After the fix only that test’s group, 5 tests, was re-run, and all 5 passed. The plugin code was not changed, so the version is still 5.100.1.

Not part of this run

These separate test runners exist for specific areas and run when the code they cover changes. Each uses its own test site. None was run for this version:

  • Security tests. A subscriber cannot read rebuild data or start a rebuild, and the fixes from the November 2026 security review hold.
  • Upgrade from an older release. Installs an older released version, builds its index, upgrades to the current code and checks the existing index keeps working until it is rebuilt.
  • Rebuilds on a large shop. Rebuilds over 54,000 products while orders, stock changes, edits and searches happen at the same time, and checks none of them waits on the rebuild or is lost.
  • A million products. Search timing on a catalogue of one million products.
  • Rebuild ownership. Rebuilds that time out, are taken over or are started twice at once on a dedicated site.
  • Release certification and packaging. The certified run on the exact release commit and the checks on the release ZIP.
  • The free edition. This run tested the paid plugin only.

What the tests do not cover

  • Your server. Tests run on our development machine with one PHP version and one MariaDB version, not every host and database you might use. Search relies on the database’s full-text index, and different database versions can score words slightly differently.
  • Your catalogue size. The release run uses small, purpose-built catalogues. Large-shop behaviour is covered by the separate runners above, which were not part of this run.
  • Your theme. Browser tests use WordPress’s own default themes. A theme that replaces the search form or results templates is not tested.
  • Every other plugin. Plugins we integrate with, such as WooCommerce, Super Speedy Filters, Ultimate Category Excluder, External Images and Polylang, are tested where a suite names them. Polylang for WooCommerce, which translates variations, is not. Other plugins on your site are not.

Back to all testing · Super Speedy Search security review

▲
▼
1/1