随着微软将 powershell 强加到所有新的服务器产品中,我开始(不情愿地)认为我需要认真对待它。 “认真对待”的一部分是 TDD。您是否找到了对 Power shell 脚本进行单元测试的好方法?
我从 Mr Geek Noise 找到了 mock 样本- 但我真的很喜欢 RhinoMocks 这样的东西。 Brian Hartsock有一个来自 MS Test 的对 powershell 字符串运行测试的示例。有点老套,但似乎有效。
我想要的是像“真实”语言一样干净的 Powershell TDD 体验。
<小时/>更新以澄清:
前两个答案试图引导我放弃测试 Powershell。意见很有趣。我不想知道在 powershell 中测试是否是个好主意。这是一个主观问题,应该在不同的论坛上提出。我想要一个对 powershell 进行单元测试的解决方案。如果您认为这是一个坏主意(可能是),请将其视为一个有趣的学术问题。
- 是的,脚本语言将不同的系统粘合在一起。然而,正如已经指出的,在动态语言中模拟和打破接缝也很容易。
- 我不是在问“调试”。调试是一个非常有用的主题。我会让别人问一下。
- 也许 PS 脚本应该很简单。该语言支持模块化,在 PS 中实现复杂的流程是不可避免的(即使是一个坏主意)。
- 这个问题的答案不是“你不能”。我可以看到(从链接的博客 - 有点旧)有些人已经在这个问题上取得了进展。
重申一下:如何以 xUnit 的风格实现 Powershell 逻辑的自动化测试? 集成测试很有趣,而打破依赖关系的单元测试最有趣。
最佳答案
Scott Muc 启动了一个名为 Pester 的 PowerShell 轻量级 BDD 框架项目:
关于unit-testing - 如何在powershell中进行TDD和单元测试?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/940497/