云服务器内容精选

  • 操作步骤 登录性能测试服务控制台,在左侧导航栏中选择“PerfTest测试工程”。 在待编辑PerfTest测试工程所在行,单击工程名称进入测试工程详情页面。 选择“测试用例”页签,在左侧“用例列表”下选择待添加请求信息的用例。 在“用例步骤”页签中,选择待添加请求信息的用例,单击“添加请求”。 在“响应提取”页签,参照表1设置基本信息。 表1 响应提取参数 参数 参数说明 启用响应提取 启用响应提取后,如果同一用例中存在多个报文,通过正则表达式或JSON提取把前一个报文的输出提取出来,作后一个报文的输入。 变量名称 变量的名称,命名必须唯一,响应提取的值赋予此变量。 预期值 预期响应提取出的变量值。 开启后,会将响应提取到的值与预期值进行比对,如果不等则链接失败。 提取内容范围 响应提取内容的范围。 其中,“报文内容”、“头域”和“URL”可通过正则表达式进行内容提取。 正则表达式 正则表达式是对字符串操作的一种逻辑公式,就是用事先定义好的一些特定字符、及这些特定字符的组合,组成一个“规则字符串”,这个“规则字符串”用来表达对字符串的一种过滤逻辑。 完整的正则表达式由两种字符构成:特殊字符(special characters)称为“元字符”(meta characters);其它为“文字”(literal),或者是普通文本字符(normal text characters,如字母、数字、汉字、下划线)。元字符的说明请参见正则表达式元字符。 说明: “()”表示提取,对于您要提取的内容需要用小括号括起来,每个“()”之间的内容表示一个子表达式。 第几个匹配项 在正则表达式已提取的内容中,获取第几个匹配的内容。 取值范围:正整数。 说明: 该参数值不可设置为0。 表达式取值 表示解析到的第几个子表达式的值。 取值范围:自然数。 说明: 取值为0:匹配整个正则表达式。 取值为1:匹配正则表达式的第一个子表达式即第一个“()”提取的内容。 通过“正则表达式”和“第几个匹配项”提取出内容后,再通过“表达式取值”获得最终的提取内容。 需获取的键名 输入需要获取的键名。 例:{"key":{"key1":"v1","key2":{"key3":"v3"},"key4":[{"key41":"v41","key42":"v42"},{"key41":"v43","key42":"v44"}]}},如果想取出"v42",则输入:key.key4[0].key42。 说明: 仅在提取内容范围是json内的值时生效。 缺省值 正则匹配或JSON提取失败时,取的值。 条件表达式 与“需获取的键名”配套使用。 例如:{"key":{"key1":"v1","key2":{"key3":"v3"},"key4":[{"key41":"v41","key42":"v42"},{"key41":"v43","key42":"v44"}]}},如果需要表达:当key42=v42时,提取目标值v41;则在“条件表达式”框里输入:key.key4[].key42 = v42,在"需获取的键名"框里输入:key.key4[].key41。 表2 常用正则表达式介绍 正则表达式 说明 示例 (\d+) 匹配非负整数 字符串: bTivm2wu9jih1LBKR4osZGrjjl 匹配结果: 2 9 1 4 ([A-Za-z]+) 匹配由26个英文字母组成的字符串 字符串: bTivm2wu9jih1LBKR4osZGrjjl 匹配结果: bTivm wu jih LBKR osZGrjjl ([A-Za-z0-9]+) 匹配由数字和26个英文字母组成的字符串 字符串: bTivm2wu9jih1LBKR4osZGrjjl:asdasd22 匹配结果: bTivm2wu9jih1LBKR4osZGrjjl asdasd22 (\w+) 匹配由数字、26个英文字母或者下划线组成的字符串 字符串: bTivm2wu9jih1LBKR4osZGrjjl:asdasd22 匹配结果: bTivm2wu9jih1LBKR4osZGrjjl asdasd22 ([\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)+) 匹配email地址 字符串: bTivm2wu9jih1LBKR4osZGrjjl:abc@abc.com 匹配结果: abc@abc.com (可选)一个请求信息可包含1个或多个变量,如果您的请求信息需要添加多个变量,请单击“添加变量”,再设置变量的相关参数。 配置完成后,单击“保存”。
  • 正则表达式响应提取示例 示例一 例如,前一个报文响应的报文内容如下所示: "baseInfo" : { "mobilephone":"xxxxxxxxxxx", "Telephone":"xxxxxxxxxxx", "unitGuid":"xx", "unitMame":null, "address":"xxx", "gender" : 0, "imageUr1" :nul1 }, "UserNotices":null }, "msgId'" : "64xxxxxxxxxxxxxxxxxxxxxxxf5", "isUsed" :"1" "token":"eyxxxxxxxxxxxJ9.eyJzdW1101JYZMiLCJcUbdGUkIJezMT!!zz#z!20TxxxxxxxxxxxxxxxxxS1611dYQISHTFKifVOsImd1aWQi0ilOODkiLCJleHAiOjEiMzIizNzY1MjZ9.myU5idiASM-11@EP7YQTfTsR_8zsq7?sbYJYoxfRsuf6OZhGL-XWmjnvdaviGauhSdw16ImWOFEvbA CS HMXGT1U0ijS5z6ezX@sZePruzFnvcIMgShF8xNPN6zVokQp-uwbyS3W6NpZpDuwsjuiZ7DZTNpKoqCkGHwvPJrHBOrWFR_u6-FBbTiFiqdhQb95U-1gLiLvoZHY_rguzwyrZ-leGRdCG_ZASreoWC-uH)HnqltpgItrChWQToHQyxOABdMSbBSHhNctBBZHgQPMESqQQQTbBiPGvbQDprB7ZBFMUB_ShynS_evtyfEladGEddhOBn-fxxxxxxxxxxx" }, 如果想要获取token值的,可通过正则表达式"token"\s*:\s*"(.*?)"提取,响应提取的设置如下图所示。 示例二 例如,前一个报文响应的报文内容为: javawind:9javawind:12 javawind:16javawind:17 javawind:46javawind:22 如果想要提取数值16,响应提取的设置如下图所示。 通过正则表达式javawind:(.*)javawind:(.*),提取数据如下: 9 12 16 17 46 22 通过第2个匹配项,提取数据如下: 16 17 通过第1个表达式,提取数据如下: 16 示例三 例如,报文内容为:ababdacac。 如果响应提取设置如下图所示: 正则表达式(ab|ac)+,表示由多个ab或者ac匹配。 第几个匹配项:1,表示由ab匹配到的,也可以输入2,表示由ac匹配到的。使用1可以得到abab及子串ab,使用2可以得到acac及子串ac。 表达式取值:0,表示使用最大匹配串abab或者acac,1表示使用子串ab或者ac。 示例四 例如,被提取内容为:HTTP响应头的Content-Type。 正则表达式Content-Type: (.*)\r\n,注意冒号后面有一个空格,结尾有\r\n,是HTTP规范产生的。 第几个匹配项:1,因为只有一个(.*)。 表达式取值:1,取到希望得到的值。
  • 操作步骤 登录性能测试服务控制台,在左侧导航栏中选择“PerfTest测试工程”。 在待编辑PerfTest测试工程所在行,单击工程名称进入测试工程详情页面。 选择“测试用例”页签,在左侧“用例列表”下选择待添加请求信息的用例。 在“用例步骤”页签中,选择待添加请求信息的用例,单击“添加请求”。 在“检查点”页签,参照表1设置基本信息。 表1 检查点参数 参数 参数说明 启用结果检查 启用检查点后,通过自定义校验信息来验证服务端的返回内容是否正确。 重试次数 请求失败后,进行重试的次数,直到该请求成功,取值范围为0~100。 说明: 重试的请求在报告中不统计,例如响应时间、RPS、成功率等,报告中仅统计最后一次的数据。 重试间隔 请求失败后,下一次重试请求执行的时间间隔,单位毫秒(ms),取值范围为0~3600000,即最大时间间隔为1小时。 响应码 仅在“报文”页签中“协议类型”为“HTTP”或者“HTTPS”时,需要设置。 响应报文携带的HTTP/HTTPS协议响应状态码,通常包括1XX,2XX,3XX,4XX和5XX。 头域 仅在“报文”页签中“协议类型”为“HTTP”或者“HTTPS”时,需要设置。 HTTP/HTTPS协议的Header部分。 单击“添加头域检查”。 设置“头 域名 ”,详情请参见头域说明。 设置检查条件。 设置内容。 响应内容 HTTP/HTTPS/TCP/UDP/WEBSOCKET/MQTT协议的Body部分,为HTTP/HTTPS/TCP/UDP/WEBSOCKET/MQTT协议请求、响应的负载部分。 单击“添加内容检查”。 设置检查条件。 条件规则 AND:需要全部符合才能检查通过。 OR:只需一条符合即可检查通过。 配置完成后,单击“保存”。
  • 禁/启用用例请求信息 如果用例的某一个请求信息想要留存但不想被使用,可以使用禁用用例请求信息功能。如果想要恢复该请求信息的使用,可以再对其进行启用。 登录性能测试服务控制台,在左侧导航栏中选择“PerfTest测试工程”。 在待编辑PerfTest测试工程所在行,单击工程名称进入测试工程详情页面。 选择“测试用例”页签,在左侧“用例列表”下选择待配置的测试用例。 禁用用例请求信息。 在“用例步骤”页签中,单击待禁用的请求信息后的,对该请求信息进行禁用,不影响其他请求信息。 启用用例请求信息。 在“用例步骤”页签中,单击待启用的请求信息后的,对该请求信息恢复启用,不影响其他请求信息。
  • 创建用例步骤 登录性能测试服务控制台,在左侧导航栏中选择“PerfTest测试工程”。 在待编辑PerfTest测试工程所在行,单击工程名称进入测试工程详情页面。 选择“测试用例”页签,在左侧“用例列表”下选择待配置的测试用例。 选择页面右侧的“用例步骤”,选择前置步骤或测试步骤配置。 前置步骤:每个执行线程中,仅执行一次。如无业务需求可以不添加。 测试步骤:测试用例的执行体,需要配置。 根据实际业务需求,选择添加请求、事务、数据指令、循环控制器、条件判断、集合点、并发权重控制器、吞吐量控制器。 支持同时添加请求、事务,也可以只添加其中之一。在实际使用过程中,数据指令、循环控制器、条件判断、集合点一般和请求联合使用。 添加请求的具体步骤请参考添加请求信息(报文)、添加请求信息(思考时间)、添加请求信息(响应提取)和添加请求信息(检查点)。 添加事务:已在事务库中存在事务模型。单击“添加事务”,勾选事务模型的名称,单击“确定”。创建事务模型的具体步骤请参考创建事务。 添加数据指令、循环控制器、条件判断或者集合点添加的具体步骤请参考添加数据指令、循环控制器、条件判断、集合点。 添加并发权重控制器或吞吐量控制器具体步骤请参考添加并发权重控制器、吞吐量控制器。 配置完成后,单击“保存”。
  • 配置请求失败跳过 用例执行时,当请求失败时,用例不会在此抛出异常终止执行,而是会继续执行后面的请求。适用场景是某个请求的失败不能影响后面关键步骤的执行。 登录性能测试服务控制台,在左侧导航栏中选择“PerfTest测试工程”。 在待编辑PerfTest测试工程所在行,单击工程名称进入测试工程详情页面。 选择“测试用例”页签,在左侧“用例列表”下选择待配置的测试用例。 在“用例步骤”页签下,找到对应的请求(AW)。 单击请求右侧第二个按钮开关,配置当前AW是否失败跳过,默认配置为“否”。 是:配置请求失败跳过,请求失败不会中断用例执行。 否: 配置默认是请求失败不跳过,该请求失败会中断后面请求执行。 样例参考 请求aw-1配置了请求失败跳过,如果请求aw-1执行结果为失败,会跳过该请求失败,接着执行后面的请求aw-2。 图1 配置了请求失败跳过的AW
  • 配置请求失败重试 用例执行时,当请求失败时,用例会根据失败重试的配置进行重试,重试次数和重试的间隔。适用场景是某个请求因网络、性能等问题导致执行结果失败,可配置重试增加容错。 登录性能测试服务控制台,在左侧导航栏中选择“PerfTest测试工程”。 在待编辑PerfTest测试工程所在行,单击工程名称进入测试工程详情页面。 选择“测试用例”页签,在左侧“用例列表”下选择待配置的测试用例。 在“用例步骤”页签下,找到对应的请求(AW)。 在“检查点”页签,开启“启用结果检查”,进行失败重试配置。 样例参考 aw-1配置了请求失败重试,没有配置请求失败跳过。 如果请求aw-1执行成功,不会执行重试,接着执行后面的请求aw-2。 如果请求aw-1执行失败,请求aw-1按照检查点的配置进行失败重试,将进行3次重试,每次间隔3000ms。 在重试3次中,aw-1请求成功则退出失败重试,且aw-1请求结果是成功的,接着执行后面的请求aw-2。 如果重试3次全部失败,则aw-1结果为失败,且不会执行后面的请求aw-2,中断执行。 图2 请求aw-1配置了检查点