在.net开发环境中,我希望实现一些回归测试脚本,以便在完全设置的基于服务器的应用程序上进行一些端到端(/blackbox)测试,最终将变得相当复杂。
我最初的想法是滚动我自己的Powershell脚本/XML配置的步骤。 但我想做一些分析,看看是否有任何我可以重用的东西,也许其他人做了什么,这可能被证明是最佳实践(到目前为止,我还没有找到)。
我意识到我可能只使用 MSBuild 项目,以及 MSBuildExtensions 和社区任务,但从长远来看,我发现这些脚本更难修改/维护。
我将为其中一个应用程序编写的一些作业步骤的示例:
- 将文件复制到某些目录并触发服务加载
- 等待服务加载文件(检查 sql 表是否完成作业)
- 截断表(等,在 sql 数据库上)
- 将 sql 表输出与预期结果进行比较
- 解析日志文件
- 等等
一些非常简单的Powershell将能够满足其中的大多数需求。 我对意见感兴趣:如果你有一些回归风格的端到端测试,你会用什么? 滚动你自己的,以便有一个相当简单和具体的实现,或使用第三方工具(如MSBuild或其他东西)?
为工作选择合适的工具通常由个人偏好驱动,但实际上应该由有效性与可维护性驱动。
MSBuild 擅长任务重用和依赖链解析。PowerShell在将复杂的进程压缩成一组优雅的命令方面大放异彩。在你的场景中,我可能会将PowerShell用于作业队列,数据库,IO的面向集成的DSL。我会保留 MSBuild 来生成生成项目。
不需要第三方工具,除非它是该领域的佼佼者并且价格合适(=开源或已被您的公司购买)。