Do you need a particular distribution from which to pull random points? Also note that if you have a small fixture and a big fixture and first you select randomly one of them and only then pick a random point the result will not reflect the difference in
area. In other words it won't be uniform.
One of the ways to get a uniform distribution is to floodfill the shapes of each fixture (floodfill on a grid with some resolution). Put all flood-filled points in an array and pick one randomly.
Another way is to triangulate all fixtures thus reducing the problem to finding a random point in a triangle. Overlapping fixtures will be an issue.
For a "best" way you should probably read on Finite Element Method and Isoparametric Mapping.
For a fast way I'd just calculate the AABB of all fixtures, combine them and keep picking random points in a rectangle until one is inside the actual shapes and not between the actual shape and the aabb. Will work for more "rectangular" shapes and not so
much for irregular shapes.
Another fast way - pick a random point on the AABB (or the rectangular border of the world). Shoot a ray towards the body's origin. Find where it intersects the body's fixtures. Pick a random point between the origin and the intersection. Will have issues
with concave bodies as a ray can enter and exit more than once in a concave body.