Thanks for opening this John,
I don't remember seeing Ludovic's comment in
SOLR-4394 after that issue was resolved, but even looking at it now i couldn't understand how my change caused a problem in that code since: a) i didn't modify anything in ExternalPaths; b) SolrJettyTestBase already had a compile time dependency on ExternalPaths. It's only because of your stack trace that i was able to understand his comment about overriding getSolrHome() and how my change introducing TEST_KEYSTORE introduced a problem for people subclassing SolrjettyTestBase in their external tests.
I'm attaching a patch that i think resolves this issue. SolrJettyTestBase now skips the SSL randomization logic (instead of a hard fail) if the example configs can't be found, and i also tried to improve ExternalPaths.SOURCE_HOME (and determineSourceHome()) have cleaner behavior in the event that they get used inadvertently by a client test.
I experimenting with this changes in a little one off external test i created and it seemed to work, but i'd appreciate feedback from an end user who got burned by this bug to e sure it really resolves things for you.