toxで仮想環境を作成してテストする

Python学習【365日チャレンジ!】191日目のマスターU(@Udemy11)です。

昨日は運良くタチウオをゲットできたので、2匹目のどじょうならぬ2匹目のタチウオを狙って、暗いうちから出撃したのですが、ものの見事に撃沈されてしまいました。

まだまだ接岸するタチウオが少ないみたいで、全くアタリ無しで2時間キャスティングの練習をしたという結果に終わりました。

よく釣りをする人で釣れなくても海を眺めているだけで楽しいという声を聞くことがありますが、私は全く同意できません。

釣りに行くからには魚を釣りたい!そして食べたい!

というのが私の釣りに対する考え方なので、釣りに行って釣れないなんて悔しくて悔しくて、次は必ず釣ってやるぞ!と思いながら帰ってくるので、また釣りに行っちゃうんですよね。

そのくらいの勢いでPython学習も頑張れば?

なんて声が聞こえてきそうなので、今日も張り切ってPython学習をはじめたいと思います。

昨日の復習

昨日は、virtualenvでテストを実行できるtoxを学習しました。

toxを使うことで、virtualenvを自動的に作成し、必要なパッケージなどもインストールした上で、必要なテストを実行することができました。

virtualenvは、自分のPython環境を変えることなくPython環境を変更することができましたが、toxを活用することで、自分のPython環境ではなく、指定したPythonの環境でテストを実行することができました。

toxの使い方については、こちらの記事をごらんください。

今日は、toxで作成した仮想環境(virtualenv)を確認してみます。

py37の場所

toxで作成したvirtualenvの環境ですが、ターミナルでtoxを実行した際に作成される.toxフォルダの中に作成されています。

toxで仮想環境を作成してテストする

なので、環境を削除するには、ターミナルで次のコマンドを実行します。

rm -rf .tox

これでtoxで作成したvirtualenvの環境が削除されますが、上記のコマンドはフォルダの中身も含めて完全に削除するコマンドなので、使う際は注意して使うようにしましょう。

上書き作成

テストを追加したり変更したりして再度toxを実行すれば、virtualenvは上書きされますが、不要になったファイルが削除されるわけではありません。

なので、不要になったファイルをなくすためには、一度削除してから作成する必要があります。

テストの追加や削除、変更があったときは、ターミナルから次のコマンドを実行して、virtualenv環境をリクリエイトします。

tox --recreate -e py37

toxで仮想環境を作成してテストする

一旦py37を削除しているので、前回作成した不要なファイルは残りません。

便利だからといってどんどん作ってしまうと、知らないうちにたくさんのvirtualenv環境が作成されていて無駄にリソースを使ってしまっていることがあるので、注意しましょう。

また、最初に作った環境(py37)を作り直す必要がないときは、先程のコマンドの--recreateを抜いたtox -e py37を実行すれば、同じテストが実行されて、パッケージが作成されます。

tox.iniを変更したときなどは、操作するvirtualenvを指定する必要があるので、toxコマンドにオプションが必要になるということですね。

気にするところ

ハードディスクに十分な空きがあれば、気にすることはありませんが、Pythonの仮想環境を作成するということは、それだけ容量を使用するということなので、このあたりのリソースの使い方に注意しておくことは必要です。

気付いたときには、容量が少なくなりすぎていたということがないように、日頃からハードディスクのシェイプアップも必要ですし、Webサイトに関しては、画像の最適化も必要です。

扱えるサイズがどんどん大きくなって、動画が主流となっているWebの世界でもやはり速さというのは重要なポイントで、画像のクオリティーを保ったままよりサイズを小さくすることは、ユーザビリティを上げるために必要不可欠です。

普段はあまり気にしない容量のことも、たまには気にかけてみると普段とは違ったことが見えてくるかもしれませんよ。

それでは明日もGood Python!