首页 > 解决方案 > 在 E2E 测试之前重新创建 Azure SQL 数据库

问题描述

我有一个带有 Azure SQL Server 的应用程序。我有一个测试环境,我在其中部署应用程序以进行端到端测试。我想在测试之前将数据库重置为某个状态。我有一个具有该状态的 bacpac 文件。我的目标是使用 ci 工具(appveyor)来做到这一点。我知道我可以使用 azure powershell api 删除整个数据库。我应该删除数据库还是清空它?还是我认为这完全错误?

标签: powershellazure-sql-databaseend-to-endappveyor

解决方案


您可以在测试前使用 Powershell 恢复 BACPAC,并在测试后删除数据库。Azure 文档中提供了一个示例:https ://docs.microsoft.com/en-us/azure/sql-database/scripts/sql-database-import-from-bacpac-powershell

一个可能执行得更快的选项是直接对数据库运行 T-SQL 以在测试之前设置初始状态并在测试之后清空数据库。

但是,进行完整的 BACPAC 恢复和退出更容易设置,因为它不依赖于在运行期间声称的预先存在的数据库,因此您可以并行运行多个测试运行。

编辑:将链接更改为 en-us 而不是 nl-nl


推荐阅读