MSTest 3.4 版本发布:改进分析器,新增 WinUI、Playwright 和 Aspire 支持

Microsoft 发布 MSTest 3.4 版本

Microsoft 发布了 .NET 测试框架 MSTest 的新版本 3.4。该版本包含多项改进、错误修复和新功能,主要更新涉及 MSTest.Analyzers、MSTest.Sdk 和 MSTest.Runner 的改进,并新增了对 WinUI 应用的支持。

主要更新内容

  1. MSTest.Analyzers 改进

    • 新增了 九条新规则,旨在推广最佳实践并避免常见错误。
    • 这些规则确保正确使用属性和断言,强制执行设计偏好,并提高代码的可读性和可维护性。
    • 例如,MSTEST0017 规定了断言参数的顺序,而 MSTEST0019 和 MSTEST0020 则指导使用 TestInitialize 方法和构造函数进行初始化任务。
  2. STA 线程支持

    • 新增了对 VSTest 和 MSTest.Runner 中 STA 线程的支持,便于在支持的框架中进行 UI 元素测试。
    • 可以通过在 runsettings 文件中设置 <ExecutionThreadApartmentState>STA</ExecutionThreadApartmentState> 来启用 STA 线程支持。
    • 未来计划允许特定测试或测试类在 STA 线程模式 下运行,并持续收集社区反馈。
  3. Fixture 方法超时支持

    • 新增了对 AssemblyInitialize, AssemblyCleanup, ClassInitialize, ClassCleanup, TestInitialize, 和 TestCleanup 等 fixture 方法的超时支持。
    • 这一功能使开发者能够更好地控制测试的执行。
  4. MSTest.Sdk 更新

    • 更新了 MSTest 命名空间的全局使用,简化了测试编写过程。
    • 用户不再需要在文件中添加 using Microsoft.VisualStudio.TestTools.UnitTesting
  5. Playwright 和 Aspire 测试简化

    • 通过添加 <EnablePlaywright>true</EnablePlaywright><EnableAspireTesting>true</EnableAspireTesting> 到项目设置中,简化了 Playwright 和 Aspire 的测试设置。
  6. WinUI 测试支持

    • 新增了对 WinUI 测试的支持,并提供了 项目示例
    • 开发团队正在努力简化未打包应用的测试,并通过使用内置的 System.Text.Json 替代 Jsonite 以及缓存命令行选项来提升运行器的性能。

总结

MSTest 3.4 版本带来了多项改进和新功能,旨在提升测试框架的易用性和性能,并响应社区反馈。开发者可以通过 官方 GitHub 仓库 获取更多项目细节和更新信息。

阅读 34
0 条评论