TestKase
TestKase
|Docs
Live

Camera injection

Feed your app's camera a chosen still image — a QR code, barcode, ID or document — during a Live session instead of the live camera, so you can test scanning, KYC and document-capture flows.

Many apps open the camera to read something — a QR code at check-in, a barcode at the till, an ID or a cheque for KYC. With no one holding the phone up to a code, those flows would be stuck. TestKase lets you feed the camera a still image you choose — the app sees that image instead of the live view, and reads it as if someone held it up to the lens.

Turn it on

Camera injection is a per-build setting, so you prepare it once:

  1. Upload your app (or pick one from My apps) — see Installing Apps.
  2. Open App settings (the ⚙ next to the build) and switch Camera injection on.
  3. Wait for the build to show Ready — we prepare a copy of it for camera injection, which takes about a minute the first time. Your uploaded file is left untouched.

Then start a session with that build. With the Camera injection switch off, the app runs exactly as you uploaded it.

Camera injection works on real Android phones and tablets, Android emulators, and real iPhones and iPads. It is not available on the iOS Simulator. Still images today — video injection is on the roadmap.

Pick an image

In the session, open Camera injection from the toolbar and choose a still image — a QR code, a barcode, a photo, an ID or a document. The app's camera shows it straight away. Pick another image at any time to swap what the camera sees, with no restart — so you can walk through several codes or documents in one session.

What you can feed it: QR codes, 1D barcodes, photos of IDs or documents, cheques, shipping labels — any still image your scanner, reader or OCR expects.

A real decode, not a fake camera

The real camera is turned off, and your app's own camera code receives the image you picked. So its scanner, barcode reader or OCR runs for real, and the branch you care about — the success screen, the "couldn't read that" retry, the KYC match — runs exactly as it would in a user's hand. It is the image that is simulated, not your app's result.

Good to know

  • The prepared copy is made per settings combination and once — the ~1-minute wait is only when you change the switches, not every session.
  • Uploaded iOS builds are re-signed to install on a managed device; the same caveats apply as for any installed .ipa — see Installing Apps.
  • On iPhone and iPad, camera injection works with apps that read the camera's frames to decode a code or document. If your iOS app relies only on the system's built-in barcode detector and nothing shows up, let us know the app — that path is still being extended.
  • It works in Automate too — set the image from your test with a setCameraImage action. See Automate → Camera injection.