Filtering
// Definition
A query mechanism that returns only records matching specified criteria — by category, date range, status, or user-defined attributes. Testing concerns include: single and combined filters, filters that return zero results, filters with special characters, case sensitivity, AND vs OR logic, and whether filter state is preserved in the URL (enabling deep-linking and back-button behaviour). Also verify that filtered counts match the displayed results and that applying a filter to a paginated list resets to page one.
// Related terms
Pagination
A mechanism for breaking a large result set into discrete pages, returned via page/offset parameters or a cursor. Common bugs include off-by-one errors at page boundaries (last item on page N appearing as first item on page N+1), incorrect total-count values, empty last pages, and results changing between pages when the underlying data is modified mid-session. Test with dataset sizes that exercise boundaries: exactly one page, exactly one item, zero items, and a non-integer number of full pages.
Sorting
Ordering a result set by one or more fields, in ascending or descending direction. Testing concerns include: correct ordering for string (locale-aware), numeric, and date fields; stable sort behaviour when two records share the same sort key; sort direction toggle (ascending → descending); sort combined with filtering and pagination; and null/empty values (do they sort first or last, consistently?). Also verify that the default sort order is documented and stable across responses.
Full-Text Search
A search mechanism that matches query terms against the full content of indexed documents, not just field-level equality. Testing concerns include: relevance ranking (are the most relevant results first?), partial-word and stemming behaviour, special-character handling, empty query results, very long queries, and search across multiple fields. Also verify performance under load — full-text search is computationally heavier than simple filtering — and that results are consistent when the same search is repeated.
Endpoint
A specific URL exposed by an API that accepts requests and returns responses. Defined by its path, HTTP method, and contract.