2

由于安全原因,我们有通用测试机,一名测试员不应在采样器中看到另一名测试员的 jdbc 配置详细信息,因为有可能滥用用户名和密码以及其他详细信息。

1.有没有办法为MySQL,DB2和Microsoft SQL等多个数据库的不同jdbc连接配置设置系统变量。例如:应用程序 X 使用 Microsoft SQL,而应用程序 Y 使用 DB2,应用程序 Z 使用 MySQL。Y 和 Z 是集成层。 数据库 URL、JDBC 驱动程序类、用户名、密码的变量。请提供示例。

2.Tester需要在测试开始前通过命令行运行#1怎么做?命令行是什么?.请提供例子。

3.在 JDBC 请求中,而不是硬编码 sql 脚本,如何发送可能包含一堆 SQL 脚本或单个 SQL 脚本的 SQL 脚本路径。.请提供例子。

我已经尝试了下面的截图,但总是只返回唯一的 sql 查询的结果,但是当查看采样器请求时,我看到所有已发送的查询,但响应仅适用于第一个查询。

在此处输入图像描述

在此处输入图像描述

在此处输入图像描述

4.对于分布式测试,上述要求的任何特殊照顾。.请提供例子。

我怎样才能实现#1、#2、#3 和#4。

在此处输入图像描述

在此处输入图像描述

在此处输入图像描述 在此处输入图像描述

以下是#1 和#2 的最新截图下面是截图在此处输入图像描述

在此处输入图像描述

下面的#3是截图

在此处输入图像描述

在此处输入图像描述

在此处输入图像描述

在此处输入图像描述

在此处输入图像描述

谢谢,拉吉

4

2 回答 2

0

每个用户可以在命令行(-JdbUser)或使用属性文件发送不同的属性。

将每个动态参数定义为 dbUser 作为属性 ${dbUser},以便每个用户都有不同的连接。

于 2017-09-08T04:25:17.787 回答
0
  1. 您可以使用__groovy 函数访问操作系统环境变量,例如

    ${__groovy(System.getenv('DB2_PASSWORD'),)}
    
  2. 取决于您的操作系统,即:

    • 对于 Windows 系列,命令行将类似于:set DB2_PASSWORD=secret
    • 对于 Unix 系列,它将是:DB2_PASSWORD=secret && export DB2_PASSWORD
  3. 最简单的方法是使用目录列表配置插件

  4. 根据远程测试用户手册条目:

    如果测试使用任何数据文件,请注意这些不是由客户端发送的,因此请确保它们在每个服务器上的相应目录中可用。如有必要,您可以通过编辑每个服务器上的 user.properties 或 system.properties 文件为属性定义不同的值。这些属性将在服务器启动时被拾取,并可用于测试计划以影响其行为(例如连接到不同的远程服务器)。或者在测试使用的任何数据文件中使用不同的内容(例如,如果每个服务器必须使用唯一的 id,则在数据文件之间划分它们)

    JMeter 从站是绝对独立的,因此您需要在每个从站上进行相同的环境变量设置、复制 JDBC 驱动程序和 SQL 脚本、根据需要进行配置更改等,

于 2017-09-11T04:10:33.793 回答