Keyboard Check · QHuman keyboard fidelity test rig
When a keyboard macro on repeat starts going wrong, is it the keys or the page? This page tells you. Nothing you type leaves it.
pass 0question 0elapsed 0.0 skeys 0
Run spoiled. This window was hidden or switched away from during the run. Browsers
slow down background tabs, so every time below is unreliable. Keep this window in front for
the whole run, then press Reset and go again.
The quiz
pass 0 · question 0
Press Reset run, then record your macro against this page.
Keyboard only. Type the letter of the correct option and press Enter. A
keyboard-only macro can drive the whole thing.
How to use it
Pick how many questions in the box below, 8 is fine, and press
Reset run.
Record one pass. In QHuman press Record, click into the answer box
here, then for each question type the letter of the option marked the correct
entry and press Enter. The page moves to the next question as you go.
Stop recording when it wraps back to question 1. If your recording has no key presses,
turn on Record keyboard in QHuman's Settings.
Press Reset run again. Your hand-typed pass must not be the one the macro is
measured against.
Play it on repeat. On QHuman's Playback tab set Start delay to 3 seconds
and Play to 20 times, then press Play. You now have 3 seconds to click into
the answer box here, so the keys land on this page and not in QHuman.
Hands off until it stops. Then read the verdict line and the table below.
What the result means. Every pass correct: the keys are landing fine, and if
something still goes wrong in your real app, it is the app, not the macro. Wrong answers
only after the first few passes: try the page lag knob below, then Between loops
in QHuman. Wrong from the very first pass: the recording itself is off, re-record it.
No run yet.
correct 0wrong 0arrived while busy 0autorepeat 0
Page lag makes this page behave like one that needs a moment after each answer.
For that window the box refuses input and anything the macro sends is counted under
arrived while busy and thrown away. Leave it at 0 to test the keys alone. Set it to
300 to see whether your macro needs a pause between repeats, which in QHuman is
Between loops on the Playback tab.
Before you press play
Click into the answer box during the start delay. QHuman has focus when you
press Play, and a macro types into whatever is focused. If you do not move focus, it types
into QHuman. The 3 second Start delay from step 4 is your window; without it there is
none.
Keep the mouse away from the screen corners. QHuman stops playback the moment the
cursor touches a corner, and a stopped run looks exactly like a short one. Park it in the
middle.
Keep this window in front. Switching tabs, minimising or locking the screen spoils
the timing and this page will say so.
Check the Play count after loading a macro. Loading puts the playback boxes back
to whatever was saved with it. A short run proves nothing.
Per pass — where it went wrong, if it did
pass
duration
drift vs pass 1
correct
wrong
arrived busy
autorepeat
first wrong Q
Drift is this pass's duration minus pass 1's. A macro whose passes get steadily
longer is falling behind the page. One that stays flat and still goes wrong is not a timing
problem. Autorepeat counts a key held long enough for Windows to repeat it, which
types a doubled letter.
Key log
t ms
pass
Q
key
state
verdict
Last 400 entries shown. Copy key log gets the whole run. If you are
sending results in, paste Copy results and Copy key log both, into
Report a bug... in QHuman or into your reply. Together they show exactly where a run
went wrong; either one alone does not.