Typing Tests Typing Lessons Typing Practice Data Entry Exercises

Free Online Typing Test Practice and Data Entry Exercises from The Practice Test

Programming Code Typing Test

Our hardest typing tests! Develop your proficiency programming languages and syntax while you practice your keyboarding with this programming code typing test. Make your coding knowledge part of your muscle memory! Over 30 code samples available.

If you don't like a test prompt, you can get a different (random) prompt with the "change test" button - or select a specific code sample to type from the list below. To find out how fast you type, just start typing in the blank textbox on the right of the test prompt. You will see your progress, including errors on the left side as you type. In order to complete the test and save your score, you need to get 100% accuracy. You can fix errors as you go, or correct them at the end with the help of the spell checker.

Type this...


Test begins when you start typing...

Personalized Feedback

This feedback graph will follow you from page to page for your typing session. You can see more details by mousing over the graph. The session is reset when the tab on your browser is closed.

Select a Specific Typing Test:

Click on a topic to use it as your test prompt. Selections are ranked according to difficulty from '*' (easiest typing tests) to '*****' (most challenging typing tests). For more details, check the difficulty key at the bottom of the page.

  • Short typing tests for beginners: (1 - 3 minute typing test at < 30 wpm)

    • qsort [] = [] qsort ... (18.6 words, 6.757 difficulty score)
    • def quick_sort h, *t... (23.6 words, 4.329 difficulty score)
    • sub quick_sort { ret... (27.8 words, 11.250 difficulty score)
    • (defn qsort [[pivot ... (28.8 words, 10.325 difficulty score)
    • def sort(xs: List[In... (30.4 words, 7.061 difficulty score)
    • def quick_sort retur... (33.6 words, 6.821 difficulty score)
    • def selection_sort(a... (35.0 words, 3.218 difficulty score)
    • quicksort = ([x, xs.... (38.0 words, 5.075 difficulty score)
    • qsort <- function(v)... (41.4 words, 6.784 difficulty score)
    • (defun quicksort (li... (49.2 words, 9.716 difficulty score)
    • function quickSort(x... (52.0 words, 10.063 difficulty score)
    • import "math" type S... (52.4 words, 6.795 difficulty score)
    • Array.prototype.quic... (53.6 words, 8.132 difficulty score)
    • function bubbleSort(... (53.8 words, 7.908 difficulty score)
    • function sortedArray... (55.4 words, 8.410 difficulty score)
    • def quickSort(arr): ... (56.2 words, 5.961 difficulty score)
    • def binary_search(a,... (61.0 words, 4.919 difficulty score)
    • function quicksort($... (63.2 words, 10.946 difficulty score)
    • Procedure QuickSort ... (72.8 words, 4.893 difficulty score)
    • fun quickSort(a:... (73.6 words, 8.382 difficulty score)
    • func quicksort
    • public static
    • function oddEvenSort... (80.0 words, 7.908 difficulty score)
    • package main import ... (83.4 words, 5.770 difficulty score)
    • Procedure qSort(Arra... (89.0 words, 6.962 difficulty score)
  • Intermediate typing tests: (3-6 minutes at 40 wpm)

    • public static
    • void quicksortInPlac... (113.8 words, 12.369 difficulty score)
    • public class DequeSt... (117.4 words, 10.970 difficulty score)
    • function sort(array,... (120.4 words, 7.730 difficulty score)
    • func quicksort(a []i... (135.2 words, 5.770 difficulty score)
    • module qsort_mod imp... (168.4 words, 5.243 difficulty score)

If you have a code sample you would like to see added, please feel free to contact us with your suggestion for a new programming code typing test.

Typing Test Difficulty Levels

Our typing tests are ranked on level of difficulty. The algorithm to calculate difficulty depends on the average word length and how many special characters like capitals, numbers and symbols are included in the text. Most standard pre-employment typing tests will be in the normal range. You should expect to get higher wpm scores on easier tests and lower wpm scores on the more difficult tests.

  • * Very Easy Typing Test
  • ** Easy Typing Test
  • *** Normal Typing Test
  • **** Difficult Typing Test
  • ***** Very Difficult Typing Test