It's not Morse Code Training software, specifically. And not necessarily the "best", but instead is fully customizable.
The HotPaw Basic application for the iPad (and iPhone) (disclaimer, I'm the developer)
https://apps.apple.com/us/app/hotpaw-basic/id295464266http://www.hotpaw.com/rhn/hotpaw/#4can be programmed to play any text string as Morse Code at a customizable audio frequency and WPM. The command:
morse "CQ DE N6YWU",20,50,20,700
will play the CQ at 20 WPM, 50% volume, 700 Hz.
(The 2nd "20" can be configured lower for Farnsworth slow down between characters).
fn sleep(5) : rem will pause for 5 seconds
So you could, in Basic code, just generate a bunch of random text or words, play each string at changing frequencies, and insert whatever delays you want.