TL; DR; PynamoDBを使ったテストでローカルで動かすDynamoDBを叩きたい場合に テーブルのキー定義やキャパシティ設定の管理はterraform/CDKなどに任せつつ、アプリケーションコードを汚さずにテストを実行したい そんなときは getattr でmetaclassを取り出して setattr でテスト用の設定値を注入してあげましょう サンプルコードはこちら github.com もうちょっと詳しく 背景 PythonでDynamoDBを使った開発していればPynamoDBはとても便利なライブラリです。非常に書きやすいAPIでDynamoDBを読み書きできますし、手軽にテーブル自体もPynamoDBで作成することも可能です。 *1 しかしPynamoDBでテーブルを作成・管理してしまうと if table.exists() みたいな条件を書いて毎回判断させたり、キャパシ