Keyboard test
Press every key and see which ones register, which are missing and which were never pressed.
Keyboard test
Press any key and it lights up on an on-screen keyboard, stays lit, and is added to a list below. Work through the whole board and whatever is left unlit is a key that did not register: a worn switch, a crumb under a cap, a dead matrix row or a connector that has come loose. It is the quickest check after buying a used keyboard, cleaning one, replacing a keycap or flashing new firmware.
The test reads the physical key, not the character it types. That is why it works the same on a Slovak, German, French or Dvorak layout: the key printed Z on a QWERTZ board reports as KeyY, and it is the KeyY square that lights up. The list names every key by its standard code, for example KeyA, Digit1, ShiftLeft, NumpadEnter or Space, so the names match what developers see in event.code and what bug reports quote.
Choose a layout to match your board. Full size has 104 keys including the numpad, tenkeyless drops the numpad, and compact keeps only the main block. Keys you press that are not on the chosen layout are reported separately instead of being dropped, which helps with extra media keys or non-standard boards. Holding a key down does not count as extra presses, so a stuck key is easy to tell from a repeating one.
Everything runs in your browser. Keystrokes are never sent anywhere, stored, or kept after you close the page. You can also paste a list of key codes into the box to get the same report for a log someone else sent you. Some keys, such as Fn on most laptops, the power key and operating-system shortcuts, are handled by the firmware or the system before a browser sees them, so they cannot be tested here.