这篇是有关于PowerShell测试框架相关文章,由于测试也是一个不小的话题,从基础的概念了解到测试用例的编写以及框架的使用。所以,我会以一个系列集的方式来谈谈关于PowerShell的脚本测试。
PowerShell的测试框架
谈到测试这个概念时,不少人都会趋之若鹜,其实在现实项目开发中测试是极为有用的。可以试想下,在项目开发中,程序员日夜赶工写好了一期项目代码,结果到项目要上线前与产品经理沟通后才发现并不满足一些业务的需求又或者发现了很多BUG,可是在开发时业务人员觉得自己已经把需求写的很清晰了都和程序员进行沟通了,可是开发好后功能和期望的还是有不小差距。而在程序员们看来,自己幸幸苦苦完成了开发功能满怀信心去给业务人员和老板展示的时候得到的不是满意结果。为什么会是这样呢?大致原因不外乎其中有一点是因为大家对各自领域的需求和执行方式不一致。测试的出现尤其基于BDD模式的测试就是为了解决这个问题。这里就不具体展开与讨论了(有兴趣可以去扩展阅读了解下有关于BDD的由来和在项目开发中的意义)因为,这不是本文的重点。还有现在很火的DevOps(开发运维一体化)流程里构建持续交付与持续集成环节时必不可少的自动化测试流程更是非常重要。
很多程序语言都自己的测试框架,甚至不止一种。当然PowerShell也不例外,它即便作为脚本语言也有自己的测试框架。Pester是一个基于BDD方式的(Behavior Driven Development,行为驱动开发是一种敏捷软件开发的技术)PowerShell的单元测试框架。它的作者是Scott Muc,它作为一个PowerShell模块包由技术社区的负责维护。使用Pester框架你可以用原生的PowerShell语言来编写相关的测试用例,然后使用Pe