## 5.2.3 実行コンテキストとは何か?

デフォルトでは、`testmod` がテストを行うべきドキュメン テーション文字列を見つけるたびに、`M` のグローバルを コピーして 使うため、モジュール上でテストを動作させても モジュールの実際のグローバル 変数を変更することはありません。このため、`M` 内でテストを 行った際に痕跡が残り (left behind crumbs)、偶発的に別のテストが 作動することはないはずです。すなわち、例では `M` 内の トップレベルで定義されたどんな名前も、ドキュメンテーション文字列 が動作する以前に定義された名前も自由に使うことができます。

`testmod()` に `globs=your_dict` を渡すことで、 自前の辞書を実行コンテキストとして使うこともできます。 おそらくこの値は `M.__dict__` を他の import されたモジュール 由来のグローバル変数とマージしたものになるでしょう。