kubectlのプラグインを開発していると、ユニットテストだけでなく、本物のKubernetesクラスタを利用したテストが欲しくなります。プラグインの振る舞いが複雑な場合は自動テストがあると安心してリリースできます。 本稿では、本物のKubernetesクラスタを利用してkubectlプラグインをテストする方法を考えます。 テストの基本形 本物のクラスタを利用してプラグインをテストするための構成を下図に示します。 必要なのは以下の3つです。 テスト対象のプラグイン テスト対象が依存するクラスタやリソース テストシナリオ テストの流れは以下のようになります。 クラスタを作成する。 必要なリソースをデプロイする。 kubectlを実行する。 間接的にkubectl pluginが実行される。 実行結果が期待通りか検証する。 このようなテストはプラグインのリリース前に手動でやっていることが多いと
![本物のクラスタを利用してkubectl pluginをテストする - GeekFactory](https://cdn-ak-scissors.b.st-hatena.com/image/square/e96c4d31cd3fed2d55b1293af5e8c742de484080/height=288;version=1;width=512/https%3A%2F%2Fcdn.image.st-hatena.com%2Fimage%2Fscale%2F223e8d654f328715205a67bf3602bb2798bcad3f%2Fbackend%3Dimagemagick%3Bheight%3D1200%3Bversion%3D1%3Bwidth%3D1200%2Fhttps%253A%252F%252Fcdn-ak.f.st-hatena.com%252Fimages%252Ffotolife%252Fi%252Fint128%252F20200202%252F20200202113939.png)