PloneTestCase is an older product. It's still used by many packages, but it is more cumbersome, more error prone, and less well documented than plone.testing and plone.app.testing.
plone.testing and plone.app.testing are complementary. The former implements low-level primitives that are not dependent on Plone-the-CMS for managing test layers and testing Zope applications. The latter provides the glue to set up a Plone site in an integration test.
If you read the plone.app.testing docs, you should get everything you need.