如何在一个脚本中构建支持 SIT 和 UAT 环境的 Tosca 测试用例

How do you Build test cases in Tosca that supports SIT and UAT environments in one script

有没有人有很好的pattern/style/best处理这种情况的做法:

我正在尝试通过简单地切换测试配置参数来开发旨在在 SIT 或 UAT 环境中工作的测试用例:"TestEnvironment" 从 SIT 到 UAT...

由于 Tosca 不能做的事情,我 运行 遇到了各种障碍...例如,Tosca 无法处理嵌套在 {XL[]} 参考中的外推测试配置参数 {CP[]}在模板实例化期间...(即这是无效的:{XL[Preconditions.URL.{CP[TestEnvironment]}]}(它可以,但是在运行时处理嵌套的东西,例如这在运行时有效:{B [URL-{CP[测试环境]}]})

因此,我要解决的问题是存储 URL、测试站点 ID、用户 ID、密码和其他环境特定数据,以便测试脚本可以正确地从任一 SIT 调用数据或根据需要即时使用 UAT...

我试过将单独的环境数据存储在测试表中(不支持隐藏密码),我试过将数据存储在缓冲区中,但是缓冲区是特定于机器的,所以它们需要预先- 无论如何都是从数据表加载的)但我觉得预加载是一个丑陋的东西。

显然,Tricentis 打算将测试配置参数作为关键切换机制...但是您如何实现它?有没有人以 - 优雅 - 的方式解决这个问题?

在最近的版本中,TOSCA 支持嵌套缓冲区。

尝试先缓冲配置参数,再嵌套缓冲区,而不是缓冲区和配置参数。

您可以嵌套配置参数并引入相应的命名模式。

以唯一标识符开头定义环境的所有参数:

SITUrl, SITUser,...

UATUrl, UATUser,...

您可以使用您设置为 "UAT" 或 "SIT" 的另一个名为 TestEnvironment 的 CP 在它们之间切换:

{CP[{CP[TestEnvironment]}用户]}

{CP[{CP[TestEnvironment]}URL]}

这将始终使用用户和 URL,具体取决于 TestEnvironment 中设置的值。