aTypeTrainer4Mac is a multilingual typing tutor for macOS. All the system keyboard layouts (but not input methods!) as well as a wide variety of non-system keyboard layouts (i.e. Dvorak, Colemak or custom layouts) are completely or partially supported.
Training within the program is based on matching a mixed string of random characters presented by the app. There are 30 levels of difficulty. You can customize the character set at each of the 30 levels, and thus customize your own learning process. If you'd prefer to use source material of your own choosing for your training sessions, you can either import text files or paste text into the app. Use command-v anywhere within the app to paste text into the training display.
At the end of each session, the app provides a detailed evaluation of your typing, saved to your desktop by default. In the Menu and Preferences, you can adjust a host of settings to customize the app to your liking.
To launch the app: In Finder, Control-click or right click the icon of the app. Select Open from the top of contextual menu that appears. Click Open in the dialog box. If prompted, enter an administrator name and password.