It seems like there is no way to associate sub-milestone to a test run which is under a test plan.
We have defined the workflow as below:
MAJOR RELEASE [Test Plan] - (associated to Parent milestone)
-> Feature 1 release - (sub milestone1)
-> Feature 2 release - (sub milestone2)
-> Product 1 release - (sub milestone3)
-> Beta release - (sub milestone4)
-> Gold release - (sub milestone5)
So basically we want it to be more collective where we can track the milestone for each new feature/product but these feature/product are still within 1 single testplan.