What people usually do is to disassemble the whole thing into its parts and test each part separately and thoroughly.
For example:
- Do your math classes work the way they are supposed to, i.e. creating rotation, translation and scaling matrices and multiplying them correctly?
- Do you concatenate the bone transformation matrices in the right way, i.e. pre- vs. post-multiplication, row-major vs. column-major layout / transposed?
- Does your skinning apply the right vertices to the right bones?
- ...
So build small unit tests that test each of these "units" separately.