Offentligt testkorpus
Vores scannerkompatibilitetspåstande er kun så gode som de beviser, de er bygget på. Denne side er korpuset, de kanoniske input, vi regressionstester enhver encoder mod, plus telefonkamerabehavioren du kan kontrollere selv uden at tage vores ord for det.
Download corpus.zip Samlet fixtures-JSON + CSV + metodologi + README. ~4 KB.
Indlæser version…
Sådan bruges korpuset
Alle testvektorer befinder sig i /test-vectors/fixtures.json. Et JSON-objekt pr. type med inputfelter og forventede afkodede delstreng(e). Hentes live fra dette websted, ingen forældede kopier.
Tag en fixtures fields-map, sæt værdierne i generatoren for den type, og klik på Generer. Den resulterende QR er bit-for-bit identisk med det, vores CI kører round-trip mod.
Ret et iPhone-kamera, Android-kamera, Google Lens, industriel scanner (Zebra, Honeywell, Datalogic) eller app-specifik læser (en bankapp, en autentifikator) mod den genererede QR. Bekræft, at den afkodede tekst indeholder enhver expect-delstreng for den fixture.
Hvis en scanner i din flåde returnerer en afkodning, der ikke matcher fixturens, indgiv et issue. Vi reproducerer, tilføjer din scanner til den offentlige kompatibilitetsmatrix og (hvis det er en encoderfejl) leverer en rettelse.
Forventede scanningresultater, kureret delmængde
Dette er en kompakt visning af den fulde fixture-JSON, grupperet efter scannerbehavior. For den udtømmende liste over alle typer, Abundera understøtter, gå til /test-vectors/.
| Type | Fixture-input | iOS Camera | Android Camera | Pro scanner |
|---|---|---|---|---|
| URL | https://example.com/test | Afkoder | Afkoder | Afkoder |
| WiFi | SSID=MyNet PSK=... WPA | Tilslutter til netværk | Tilslutter til netværk | Afkoder payload |
| WiFi Enterprise (EAP) | WPA2-EAP PEAP identity=alice@corp | iOS 17+ | Afkoder | Afkoder |
| vCard | FN=Alice ORG=Acme ... | Tilføj til Kontakter | Tilføj til Kontakter | Afkoder payload |
| TOTP | otpauth://totp/...?secret=JBSW... | Autentifikationsapp læser den | Autentifikationsapp læser den | Afkoder URI |
| eSIM | LPA:1$rsp.example.com$K2-LM... | iOS 17.4+ klargør | Android 13+ klargør | Afkoder URI |
| Bitcoin (BIP-21) | bitcoin:1A1zP1eP... | Wallet-app åbnes | Wallet-app åbnes | Afkoder URI |
| SEPA (EPC) | BCD header + name + IBAN + amount | Kun rå streng | Kun rå streng | Bankapp-support |
| Swiss QR-bill | SPC header + IBAN + address + amount | Kun rå streng | Kun rå streng | Schweiziske bankapps native |
| GS1 Digital Link | https://id.gs1.org/01/09506000134352 | Åbner URL | Åbner URL | POS-firmware parser AI'er |
| Data Matrix | Vilkårlig payload | Ingen afkodning | Kun Google Lens | Native |
| Aztec | Vilkårlig payload | Ingen afkodning | Nogle Android-læsere | Native |
| PDF417 | AAMVA eller vilkårlig | Ingen afkodning | Google Lens delvis | Native |
| AAMVA kørekort | @
ANSI 636014080002DL... | iOS 17+ kørkortsbevidst | Android kørkortsbevidste apps | Native |
| EAN-13 | 0012345678905 | Afkoder cifre | Afkoder cifre | Enhver butiks-POS |
| Code 128 | ABC-123 | Afkoder | Afkoder | Native |
| Micro QR | Kompakt payload | Ingen afkodning | Ingen afkodning | Kun industrielle læsere |
| rMQR | Rektangulær payload | Ingen afkodning | Ingen afkodning | Noget Scandit/Cognex-firmware |
Hvad "forventet scanningresultat" betyder
- Afkoder, native telefonkameralæser returnerer payload uden at en separat app er nødvendig.
- Delvis, afkodning afhænger af en specifik app (autentifikator, wallet, bank) eller en specifik OS-version.
- Ingen afkodning, native kamera returnerer ingenting. Kræver en specialistscanner eller -læser.
Metodologiske noter
- Enhver fixture kører round-trip. Vores CI genererer hver kode i headless Chromium, afkoder den tilbage via browserens
BarcodeDetector-API og verificerer delstrengsmatchningen. En grøn CI betyder, at korpuset er internt konsekvent. - Scannerresultaterne i denne tabel er fra manuel testning på rigtige enheder. Ikke syntetiseret. iPhone 15 Pro på iOS 18.3, Pixel 8 på Android 14, Zebra DS8100-imager på firmware CAAACS00-002-R06.
- Vi publicerer negative resultater. Hvis iPhone Camera nægter at afkode en symbologi (Data Matrix, Aztec, PDF417), er det "Ingen afkodning" i tabellen, ikke en omformulering af "native læser".
- Korpuset er versioneret. Når vi tilføjer en type eller retter en encoderfejl, leveres den tilsvarende fixture-post i det samme commit. Tjek fixture-historikken for revisionssporet.
Hvad der kommer
- Forhåndsrenderede artefakter. Den nuværende ZIP bundler fixtures + metodologi + CSV. En fremtidig revision tilføjer forhåndsrenderede SVG + PNG af hver fixture, så du kan droppe dem direkte ind i en skannervlåde-harness. Afventer et headless-browsertrin ved byggetid.
- Skannervlåde-attestation. Dateret log på docs/SCANNER_ATTESTATION.md, vokser hver gang vi verificerer mod en ny enhed.
- Tredjepartsverificering. Et uafhængigt sikkerhedslaboratorium kører korpuset gennem en skannervlåde og publicerer en signeret attestation. Afventer, bestilt; rapport vil blive publiceret her ved ankomst.
Se også
- /test-vectors/, fuld fixture-JSON og søgbar tabel.
- /compatibility/, live scannerkompatibilitetsmatrix.
- /standards/, per-standard referencesider.
- /print-size/, fysisk udskriftvejledning ved siden af korpuset.