読者です 読者をやめる 読者になる 読者になる

HIDARI日記(右)

そのときどき興味ある技術を中心にだらだら書いてます。内容は個人の見解であり、所属する企業を代表するものではありません。

第6回 PowerShell勉強会 に参加してきました #jpposh

Powershell Testing

第 6 回 PowerShell 勉強会 - Japan PowerShell User Group (JPPOSH) | Doorkeeper に参加して、LTでPesterについて少しだけ話をさせてもらって来ました。

LT資料はこちら。

せっかくなので、ちょっとLTの補足なんかをしておきたいと思います。

TestDrive

TestDriveにアクセスするときTestDrive:\$TestDriveが使えますが、微妙に異なる点があります。

前者は通常のPSDriveですが、後者にはTestDriveが指す場所のフルパスが入っています。

そんなに困ることは無い気がしますが、一応覚えておいた方がいいかと思います。

コードカバレッジ

二点ほど。

まず一点目。Pester自体はPowerShell2.0以上で動作するんですが、コードカバレッジ機能だけはPowerShell3.0が必要です。そんな環境でPester使うことあるんかって話は置いといてください(ニッコリ。

もう一点は計測結果に出てくる 「commands」 についてです。資料の中では

Code coverage report:
Covered 66.67 % of 3 analyzed commands in 1 file.

って出てるやつです。

Pesterのコードカバレッジの計測はPSBreakpointsで実行されたcommand(文)を記録することで実現されています。実行されたPSBreakpointsがcommandsとして報告されます。 そのためPowerShellの仕様としてPSBreakpointsが置けないelsetryfinallyなんかはcommandsにカウントされません。ifとかthrowとかreturnとかはカウントされます。

コードカバレッジの結果を見て数が合わないなって思ったときは、一度確認してみてください。

ほかの方々の資料

は、こちらから