Testing 测试数据是否应用于生产?

Testing 测试数据是否应用于生产?,testing,deployment,production,Testing,Deployment,Production,我们正在为生产中的主要应用程序部署更新。这个更新已经在QA中测试过了,看起来很好。我们的客户想在生产中进行测试。对于这种情况,我们将在生产中使用“测试数据”运行应用程序,一旦测试完成,我们将删除“测试数据” 一些服务器管理员对此表示反对,因为“测试数据不属于生产”。我认为这没关系,因为QA服务器和生产服务器有不同的硬件,数据库包含不同的应用程序(QA有更多的数据库,生产是专用的)。除此之外,还有其他事实可以支持我的观点吗 编辑:添加上下文 该应用程序是一种自动接收和验证数据的工具。我们通过电子邮

我们正在为生产中的主要应用程序部署更新。这个更新已经在QA中测试过了,看起来很好。我们的客户想在生产中进行测试。对于这种情况,我们将在生产中使用“测试数据”运行应用程序,一旦测试完成,我们将删除“测试数据”

一些服务器管理员对此表示反对,因为“测试数据不属于生产”。我认为这没关系,因为QA服务器和生产服务器有不同的硬件,数据库包含不同的应用程序(QA有更多的数据库,生产是专用的)。除此之外,还有其他事实可以支持我的观点吗

编辑:添加上下文

该应用程序是一种自动接收和验证数据的工具。我们通过电子邮件接收文件,该工具自动验证文件并将其导入数据库。我们有一个BI系统,它使用这些信息创建报告(excel文件通过电子邮件接收,然后进行验证,然后生成报告/视图,所有这些都是自动化的)


“测试数据”将是表示真实数据的旧文件(以前工作中的好文件和坏文件)(实际上是真实数据,但有问题或太旧)

你的管理员是对的。在生产中使用测试数据将使您面临风险(安全漏洞):

  • 生产中的测试数据可能会对您的公司造成损害(有意或无意)
例如,如果您在生产中拥有非激励身份,您可以向他们付款。如果它们与真实的银行账户有关联,你就失去了金钱而无法发现它

测试数据可以更改您的管理报告。当有虚假行为时,一些会影响报告并影响决策。这将很难跟踪,甚至更难纠正

测试数据可以与生产数据交互。如果有人犯了错误并建立了错误的关系,则可以根据测试数据更改生产数据


如果要标记测试数据,就没有好的方法来检测它。所有数据都可以标记为测试数据。如果您在businesslayer中处理不同的测试数据,它将不会是对您的生产环境的真正测试。

是!但在生产中手动使用测试数据对我来说并不是一个好主意,因为它无法控制或监控。我下面的回答是假设测试数据用于自动测试

生产中的测试数据是“今天”需要的。当自动化测试不是要求(或不存在)时,这不是要求。因此,一般来说,这将是不赞成的。安全是主要原因。另一个原因是它对混乱网站分析的影响。这些都是真实和充分的理由

人们无法决定哪一天简单地将测试数据投入生产,尤其是在项目即将结束时。这需要在开发开始时就成为一项要求。因此,从第一次部署开始,测试数据就需要存在于生产中。其影响需要研究和记录。组织作为一个整体需要了解它的好处和影响

测试数据需要根据其类型、需要或上下文进行划分。例如:可检索的测试数据和可编辑的测试数据。第一步是使可检索(只读从不更改)的测试数据可用。在许多情况下,这也许是我们能走的最远的一步,但仍将提供良好的结果。这种只读测试数据的创建需要自动化,最好是文档化

在生产中使用测试数据的好处是巨大的。应用程序的自动化测试比应用程序本身更重要。如果管理层意识到这一点,那么至少最初的“皱眉”会发生变化。我觉得生产中的测试数据应该被视为需求/用户故事,所有与之相关的问题都应该得到缓解。这一领域需要发展新的发展模式


此讨论还与集成测试相关,本文重点介绍了

的好处。现在,使用与生产相同的基础结构配置的登台环境是一种很好的做法,因此您可以执行Pentest、负载测试、,做任何你想做的事情,以确保生产按照你的预期进行。

我认为没有足够的背景。什么是测试数据?什么是应用程序?使用测试数据运行意味着什么?仅仅“测试数据不属于生产环境”本身并没有足够的理由。这个解释背后可能有一些潜在的原因,找出他们为什么会有这种感觉对我很有帮助。谢谢,我只是添加了一些上下文。