# QA Checklist

Use this checklist when verifying a new JavaScript API test implementation:

* [ ] `window.shoplift` is defined on page load
* [ ] `isHypothesisActive()` returns `true` with `?slVariant=<id>` URL parameter
* [ ] `isHypothesisActive()` returns expected results in a fresh incognito window (visitor is randomly assigned)
* [ ] Variant experience renders correctly
* [ ] Control experience renders correctly
* [ ] Error handling falls back to control (test by temporarily using an invalid hypothesis ID)
* [ ] No visual flicker during variant application
* [ ] For manual triggers: test only activates on the intended user action
* [ ] For analytics integrations: test data appears in your analytics platform
* [ ] For consent integrations: analytics data is only sent when consent is granted
