系统配置
本文档详细介绍前端测试智能化平台的系统配置,这些配置允许您定制通知提示和执行环境、角色等相关配置。
💾 通知配置
目前通知只支持邮件通知,您可以自由配置需要通知的环节。
🌐 环境配置
与日常测试一样,我们经常需要在不同的环境进行相同功能的测试,例如测试环境测试完成后,需要在沙盒和线上环境进行回归等。
为了能够支持一份用例同时在多个环境进行执行,我们提供了多环境管理的能力。
具体来说,我们支持在整个前端测试流程中,定义一组变量,然后在不同的环境中可以做不同的配置管理,从而实现一套用例在多个环境中进行执行。
说明: 环境配置生效于前端测试流程中的各个环节,包括: 用例设计、用例智能执行、自动化代码生成、自动化用例回归、以及自动化用例修复等全流程。
📝 环境配置说明
进入环境配置管理页面:
所有项目默认都可以看到一个 default 的线下环境(默认环境)。
default环境是一个特殊的环境,它是所有智能测试任务的默认环境,同时它也是所有其他环境的默认配置。
即如果定义了变量 A,但是环境 C 中没有对该变量赋值,则环境 C 中该变量的取值等同于 default 该环境的配置。
用户可以按需新增自己的环境: 如 online, sandbox 等。
此外,多个环境之间可以通过拖拽的方式来进行环境排列的顺序调整,可以帮你按照你希望的顺序进行环境列表管理。
✨ 特殊变量介绍
在我们的配置变量中,有一些特殊的配置变量,它们在我们的系统中有一些特定的功能&含义。 具体来说,包括如下几个变量:
| 配置项 | 默认值 | 配置说明 |
|---|---|---|
cookies | {} | JSON 格式 支持两种模式: {} 模式或 [] 模式进行 Cookie 注入{} 用于需要支持多用户登录场景,其中,key 为用户名称,value 为 [] Cookie 导出的 JSON 格式;[] 模式仅用于单用户登录场景,其中,对应的取值为 Cookie 导致的 JSON 格式;获取 Cookie 的方式请参考: Get cookies.txt LOCALLY插件,通过 JSON 模式导出即可。 |
localStorage | {} | JSON 格式,{"key", "value" 模式}localStorage 为内置变量,会在浏览器启动时自动进行注册,用于弹框提示关闭等场景。 |
修改特殊变量会直接影响到前端测试任务的各个环节,实时生效,无需任何代码改动。
🔧 通用变量
通用变量是平台侧本身没有给予它内置含义,而是完全由业务侧自行定义的变量。
例如,用户可以用 BASE_URL 来定义平台访问 URL 地址。
完成变量定义后,即可在自动化用例代码中动态引入该变量,详见后续介绍。
💡 环境变量的应用
关于特殊变量的作用,在特殊变量一节中已经进行了相关的介绍。
下面,我们重点介绍通用变量是如何生效的。
通用变量的核心目的是让我们维护的自动化测试代码可以跨多个环境兼容,支持在不同环境进行自动化用例回归。 因此,通用变量主要是在自动化用例代码中进行引入使用。
在用例执行中,为了能够让用例执行过程中可以通过变量通过注入。
具体策略如下:在用例的代码块部分,我们可以在需要引入的变量的位置直接通过变量名称进行引入即可。
在真实任务执行时,执行器会根据当前代码进行 AST 语法解析,找出其中所有尚未定义的变量。 然后从环境配置中找出当前环境下对应变量的取值,追加到执行代码的最上方,从而实现动态替换支持多环境执行。
所有的变量取值统一读取为字符串类型,如果希望转化为 int, dict, list 等其他类型时,可以配置为 JSON 格式并在用例代码中进行格式转化。
通过合理的系统配置,您可以确保平台在各种环境下稳定高效地运行,满足不同场景的测试需求。
上一节:全局概念