云服务器内容精选

  • 正则表达式响应提取示例 示例一 例如,前一个报文响应的报文内容如下所示: "baseInfo" : { "mobilephone":"xxxxxxxxxxx", "Telephone":"xxxxxxxxxxx", "unitGuid":"xx", "unitMame":null, "address":"xxx", "sex" : 0, "imageUr1" :nul1 }, "UserNotices":null }, "msgId'" : "64xxxxxxxxxxxxxxxxxxxxxxxf5", "isUsed" :"1" "token":"eyxxxxxxxxxxxJ9.eyJzdW1101JYZMiLCJcUbdGUkIJezMT!!zz#z!20TxxxxxxxxxxxxxxxxxS1611dYQISHTFKifVOsImd1aWQi0ilOODkiLCJleHAiOjEiMzIizNzY1MjZ9.myU5idiASM-11@EP7YQTfTsR_8zsq7?sbYJYoxfRsuf6OZhGL-XWmjnvdaviGauhSdw16ImWOFEvbACSHMXGT1U0ijS5z6ezX@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 响应提取参数 参数 参数说明 启用响应提取 启用响应提取后,如果同一用例中存在多个报文,通过正则表达式或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个或多个变量,如果您的请求信息需要添加多个变量,请单击“添加变量”,再设置变量的相关参数。 配置完成后,单击“保存”。
  • 用例管理 在测试用例的详情页,可以进行以下操作: 查看测试用例详情。 单击用例名称查看该用例详细信息。 图1 测试用例详情 编辑测试脚本。 可根据需要添加测试脚本,在测试用例详情页,单击测试脚本后面的“编辑”,编辑脚本类型。 图2 编辑测试脚本 用例发布。 当用例状态为“编辑中”时,用例详情页面,单击用例名称后“发布”,可对用例进行发布。 关闭用例。 当用例状态为“已发布”时,用例详情页面,单击用例名称后“关闭用例”,可对用例进行关闭。 修改用例。 单击用例名称,进入用例详情页,单击右上角“编辑”,即可修改用例信息。 用例状态为"已关闭"和"已发布"时,不支持编辑用例基本信息。 用例编辑中/发布/关闭的使用逻辑: 测试用例在被创建时的默认状态是编辑中,当测试用例中的场景和测试脚本以及其他相关信息都确认达到测试条件时,可以选择发布测试用例,发布后的测试用例才能被用于创建仿真任务,并且用例一旦发布,就不允许删除,从而保证测试结果的可追溯。当发布后的测试用例后续不会再进行测试时,可以选择关闭测试用例,关闭后的测试用例不能用于创建仿真任务,并且同样关闭后的测试用例不能被删除,从而保证结果的可追溯性。 父主题: 测试用例管理
  • 用例管理 在测试用例的详情页,可以进行以下操作: 查看测试用例详情。 单击用例名称查看该用例详细信息。 图1 测试用例详情 编辑测试脚本。 可根据需要添加测试脚本,在测试用例详情页,单击测试脚本后面的“编辑”,编辑脚本类型。 图2 编辑测试脚本 用例发布。 当用例状态为“编辑中”时,用例详情页面,单击用例名称后“发布”,可对用例进行发布。 关闭用例。 当用例状态为“已发布”时,用例详情页面,单击用例名称后“关闭用例”,可对用例进行关闭。 修改用例。 单击用例名称,进入用例详情页,单击右上角“编辑”,即可修改用例信息。 用例状态为"已关闭"和"已发布"时,不支持编辑用例基本信息。 用例编辑中/发布/关闭的使用逻辑: 测试用例在被创建时的默认状态是编辑中,当测试用例中的场景和测试脚本以及其他相关信息都确认达到测试条件时,可以选择发布测试用例,发布后的测试用例才能被用于创建仿真任务,并且用例一旦发布,就不允许删除,从而保证测试结果的可追溯。当发布后的测试用例后续不会再进行测试时,可以选择关闭测试用例,关闭后的测试用例不能用于创建仿真任务,并且同样关闭后的测试用例不能被删除,从而保证结果的可追溯性。 父主题: 测试用例管理
  • 背景信息 性能自动化集成了华为云云性能测试服务。性能测试服务(CodeArts PerfTest)是一项为基于HTTP/HTTPS/TCP/UDP/WebSocket/RTMP/HLS等协议构建的云应用提供性能测试的服务。 服务支持快速模拟大规模并发用户的业务高峰场景,可以很好的支持报文内容和时序自定义、多事务组合的复杂场景测试,测试完成后会为您提供专业的测试报告呈现您的服务质量。 性能自动化用例包含基本信息和测试脚本两部分: 基本信息用于管理和描述测试用例,包含用例名称(必填)、编号、标签、用例等级等信息,基本信息的编辑通过测试计划服务页面完成。 测试脚本定义测试步骤,包含请求、事务、阶段等,测试脚本的编辑将跳转至CodeArts PerfTest完成。
  • 用例规范检查 用户可以对创建的手工测试用例进行规范检查,根据检查结果对用例进行优化。详细的编写规范请参考测试用例编写规范。 此功能为您提供65天试用期,后续需要开通测试计划专业版套餐或CodeArts专业版以上套餐来延续您的高阶体验。 完成编写测试步骤后,在页面下方单击“规范检查”,检查结果将显示在页面下方。 用户可以根据提示信息对用例进行优化,单击对应的规范描述可以查看详细规范信息。 用例编写完成后,单击保存。 父主题: 手工测试用例
  • 用例命名规则 规则2.1 用例名称为必填项,要简洁、短小,不能包含模糊语句。不要超过40个字符。 规则2.2 用例名称需简要说明用例意图,提炼关键前置条件、步骤和观察点。 规则2.3 用例名称在特性范围内唯一,不允许出现重复、包含、叠加的关系,或者仅有数字编号差异。 规则2.4 用例名称避免使用特殊字符,可以用“_”对名称进行分割。 建议2.1 用例名称建议采用动宾结构。例如:“用例意图_预制条件_观察点”,也可以通过“_”追加条件或原因。 【正例/反例】测试用例名称描述示例 正例 反例 点评描述 新建信息_新建按钮_单次单击。 通过左上角New Message新建。 由于用户界面上的按键位置不固定,不应使用受约束的描述,如反例中的“左上角”。 建议使用有客观意义、严谨的描述,如“新建按钮”。 查询流量策略_非法参数_特殊字符。 使用包含特殊字符构造的非法参数来查询流量策略。 正例简洁、提炼关键预置条件,名称使用动宾结构且使用_进行分割,用例意图一目了然。 反例中用例名称不够简洁,未对关键预置条件进行提炼分割。 查询流量策略_非法参数_特殊字符。 查询流量策略_非法参数_特殊字符@ 查询流量策略_非法参数_特殊字符# 反例中用例名称含有特殊字符,且仅有特殊字符有差异,不符合等价类划分原则。 父主题: 测试用例编写规范
  • 操作步骤 登录性能测试服务控制台,在左侧导航栏中选择“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测试工程所在行,单击工程名称进入测试工程详情页面。 选择“测试用例”页签,在左侧“用例列表”下选择待配置的测试用例。 选择页面右侧的“用例详情”进入用例详情页面,输入测试用例描述、前置条件、测试步骤,依照表1设置用例基本信息。 表1 用例基本信息 参数 参数说明 状态 描述测试用例当前处于哪种状态,如新建、设计中、测试中、完成。 用例ID 用例ID信息。 用例等级 Level 0:最基本的功能验证,用例不宜过多,各模块尽量保证在10-20个,占比5%左右。 1级:基本功能验证,可用于继承特性的基本功能验证、迭代验收前的基本功能验证等,占比20%左右。 2级:重要特性验证,可用于测试版本(非回归版本)中手工测试,占比60%左右。 3级:一般功能/非重要功能验证,包括对基本/重要功能的异常测试,占比10%~15%左右。 4级:非常特殊输入、场景、阈值条件的用例,该级别用例不宜过多,占比0%~5%左右。 标签 用例自定义标签,用于标识用例。 输入标签:单击标签输入框,输入标签后,用空格或回车键生成标签,每个用例限制10个标签。 删除标签:单击标签输入框,单击已生成标签后的删除该标签。 创建时间 测试用例的创建时间,用例保存后自动生成。 修改时间 测试用例的最新修改时间,用例保存后自动生成。 用例详情信息设置完成后,单击“保存”。
  • 测试用例简介 PerfTest测试工程主要由测试用例、测试任务和性能报告组成。事务库和智能分析属于增强能力。 测试用例、测试任务、性能报告分别对应了性能测试活动的三个主要环节。 图1 性能测试活动流程 其中测试用例是基于某个性能压测场景建立的测试模型。测试任务是基于已定义的(若干个)测试模型发起一次性能测试的活动。性能报告是测试任务执行的结果,呈现的是被测系统在高并发场景下的性能指标。 图2 测试用例、测试任务和性能报告之间的关系 父主题: 测试用例说明
  • 操作步骤 登录性能测试服务控制台,在左侧导航栏中选择“PerfTest测试工程”。 在待编辑PerfTest测试工程所在行,单击工程名称进入测试工程详情页面。 选择“测试用例”页签,可以在页面左侧查看当前已创建的用例目录结构。可以通过以下两种方式创建用例: 在当前目录下创建用例:直接单击“创建用例”。 图1 在当前目录下创建用例 在指定目录下创建用例:将鼠标光标放置在指定目录上,单击,在下拉框中选择“创建用例”。 图2 在指定目录下创建用例 单击“保存”。
  • 自定义请求 在测试用例中,可能需要调用项目之外的接口,例如在请求华为终端app前,需要调用账号服务的获取用户认证token。此时用户可以在测试步骤中添加自定义请求,自定义请求可以是任何 HTTP 请求,包括常见的 GET、POST、PUT、DELETE 等请求。 单击“URL请求”选项,添加“自定义URL请求”测试步骤。 在自定义请求中可编辑请求名称、地址和请求参数等信息,详细参照设置接口请求章节。
  • 从postman文件导入 接口自动化测试用例支持通过导入Postman文件,生成测试步骤。 导入Postman文件需满足以下要求: 支持Postman Collection v2.1标准。 仅支持Postman请求方法、请求URL、请求头、请求体生成测试步骤。 Postman请求体导入方式仅支持form-data、x-www-form-urlencode、raw。 Postman请求体form-data上传附件需要在测试步骤中单独上传。 单击“Postman”,弹出“导入Postman Colection文件”对话框。 上传需要导入的postman文件,单击“确定”,导入postman请求文件,完成测试步骤添加。
  • 从接口/接口用例导入 用户可以将API设计的数据导入测试步骤,主要有两个来源:“从【接口用例】导入(推荐)”和“从【接口】导入”。 从【接口用例】导入(推荐) 在弹出的“从【接口用例】导入(推荐)”对话框上,选择需要导入的接口,即“API设计”中接口的调试用例,参考保存为用例。 单击“导入”,完成测试步骤添加。 从【接口】导入 在弹出的“从【接口】导入”对话框上,选择需要导入的接口,即“API设计”的接口数据。 单击“导入”,完成测试步骤添加。
  • 从接口/接口用例导入 用户可以将API设计的数据导入测试步骤,主要有两个来源:“从【接口用例】导入(推荐)”和“从【接口】导入”。 从【接口用例】导入(推荐) 在弹出的“从【接口用例】导入(推荐)”对话框上,选择需要导入的接口,即“API设计”中接口的调试用例,参考保存为用例。 单击“导入”,完成测试步骤添加。 从【接口】导入 在弹出的“从【接口】导入”对话框上,选择需要导入的接口,即“API设计”的接口数据。 单击“导入”,完成测试步骤添加。