【问题标题】:Is it possible for VS LoadTest inserting a new value into the .csv data source during the testVS LoadTest 是否可以在测试期间将新值插入 .csv 数据源
【发布时间】:2018-01-24 19:34:21
【问题描述】:

在我的 Visual-Sudio 负载测试中,我需要运行一些前置条件测试并生成一些批准的 ID。然后这些批准的 id 将用于运行其他负载测试。我们如何保存这些批准的 ID?然后我可以将这些 id 与 .csv 文件中的数据结合起来运行我的负载测试?我可以将这些值插入到我的 .csv 数据源文件中吗?如何?

谢谢

【问题讨论】:

  • edit您的问题更详细地解释您想要实现的目标。你真的是说两个负载测试吗?或者,您是否想在一个 webtest 中获取一个值并在另一个 webtest 中使用它,其中两个 webtest 都在同一个负载测试中。您的问题过于宽泛和模糊,目前无法回答。
  • 我们换一种方式来解释。在我的负载测试中,我需要不同的用户使用不同的批准 ID 来运行测试。我可以运行一个小负载测试来生成这些批准的 id。这只是我进行其他负载测试的前提。在我的真实负载测试中,如果用户已批准 id,我将使用已批准的 id 进行 web 请求,如果没有批准的 id,我将使用其他项发送请求。每个用户都有一个批准的 ID,并且有大量的测试用户。我不想手动将批准的 id 放入数据源文件中。有什么简单的方法吗?

标签: visual-studio performance-testing load-testing


【解决方案1】:

考虑使用队列解决方案(例如 RabbitMQ)作为中介。大多数(但不是全部)性能测试工具会在测试开始时为每个用户将参数文件加载到 RAM 中,以避免多个用户尝试访问并获取基于磁盘的文件的锁定时不可避免的磁盘冲突。

这将如何工作?业务流程 A 创建一个项目。此项被传递到由 RabbitMQ 管理的队列(或 Amazon 简单队列服务,或 Cloud Azure 队列服务,或......)。业务流程 B,它使用业务流程 A 的输出,然后从队列中读取处理所需的值。

【讨论】:

    【解决方案2】:

    我使用了一项负载测试(通常在虚拟用户数量较少的情况下)为我的实际负载测试准备数据。数据准备测试使用 C# 和 .Net 可用的正常文件输出例程将数据准备结果写入文本文件。该输出文件可以是 CSV 格式,因此可以轻松地将其作为数据源 CSV 读取到稍后运行的另一个测试中。

    通常我会有一个数据准备测试的PostWebTest 插件将一行以 CSV 格式附加到文件中。

    另见this answer

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-09-23
      • 2010-10-27
      • 1970-01-01
      • 2020-09-29
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多