タイトルのとおりです。
結論だけ挙げると以下のコマンドで実行できるようになった。重要なのは--require jsdom-global/register --require ignore-styles
の部分です。
$ mocha --require jsdom-global/register --require ignore-styles --compilers jsx:babel-register --recursive test
具体的にはinsert-cssを使用しているパッケージを利用したコンポーネントを作て、そのテストをmochaで動かそうとしたらdocumentが無いと言われて死ぬ。
自分のコンポーネントが特にcss modulesみたいな事をしていなくても依存モジュールが行っているとdocumentにstyleを挿しに行こうとするのでだめ。
確認できてないけどstyle-loaderとかでも同じ問題が起きるかもしれない。
最初はdocumentが無いならkarmaで動かせればいいやんという事で頑張ってたけどwebpackとの連携がうまくできず、あらためて冷静になってmochaで試行錯誤してたらいけた。