Testing 测试n层web应用程序-我的测试项目是否应该有自己的数据库?

Testing 测试n层web应用程序-我的测试项目是否应该有自己的数据库?,testing,Testing,在n层web应用程序中,我是否应该针对另一个数据库运行集成测试,一个专用于测试代码的数据库?对生产数据库进行测试也是标准做法吗 您不应该在生产环境中运行未经测试的代码。毕竟,您不想发现它有一个可以清除所有数据的bug。这就是测试应该发现的。生产系统中不应该有测试/暂存数据。从生产中转储数据并将其加载到另一个环境中,以便使用真实数据进行定期测试,这是一种很好的做法 您应该有一个测试数据库(不与生产共享)。在每次测试之前清除数据是个好主意 您可以在生产环境中运行烟雾测试。他们会假装是一个用户(代理)

在n层web应用程序中,我是否应该针对另一个数据库运行集成测试,一个专用于测试代码的数据库?对生产数据库进行测试也是标准做法吗

您不应该在生产环境中运行未经测试的代码。毕竟,您不想发现它有一个可以清除所有数据的bug。这就是测试应该发现的。生产系统中不应该有测试/暂存数据。从生产中转储数据并将其加载到另一个环境中,以便使用真实数据进行定期测试,这是一种很好的做法

您应该有一个测试数据库(不与生产共享)。在每次测试之前清除数据是个好主意


您可以在生产环境中运行烟雾测试。他们会假装是一个用户(代理),访问许多页面,甚至可能创建一些东西(带有一个特殊的标记,这样您就可以再次找到它们并删除它们。)

您不应该在生产环境中运行未经测试的代码。毕竟,您不想发现它有一个可以清除所有数据的bug。这就是测试应该发现的。生产系统中不应该有测试/暂存数据。从生产中转储数据并将其加载到另一个环境中,以便使用真实数据进行定期测试,这是一种很好的做法

您应该有一个测试数据库(不与生产共享)。在每次测试之前清除数据是个好主意


您可以在生产环境中运行烟雾测试。他们会假装是一个用户(代理),访问许多页面,甚至可能创建一些东西(带有一个特殊的标记,这样你就可以再次找到它们并删除它们。)

我宁愿考虑使用自己的数据集的不同的数据库用户。数据库架构应该相同。我从来没有用同一个数据库用户在生产数据库上运行过测试。测试逻辑甚至不应该交付给客户端,因为它可能会导致严重的安全问题


在我看来,您需要一个完整的生产数据集来进行测试,以便能够测试应用程序的每一个特性。此外,您还需要一个空数据库(没有任何业务数据),以便应用程序客户端将其作为交付的初始点。这样的数据集不应该被测试,因为测试业务逻辑不需要任何数据。

我宁愿考虑使用自己的数据集的不同数据库用户。数据库架构应该相同。我从来没有用同一个数据库用户在生产数据库上运行过测试。测试逻辑甚至不应该交付给客户端,因为它可能会导致严重的安全问题

在我看来,您需要一个完整的生产数据集来进行测试,以便能够测试应用程序的每一个特性。此外,您还需要一个空数据库(没有任何业务数据),以便应用程序客户端将其作为交付的初始点。不应该测试这样的数据集,因为测试业务逻辑不需要数据