我想在“父”测试结束时运行一个“子”测试,如果没有设置标志skipReset
,该测试将清除会话cookie。此外,我想运行一个“祖父母”测试,它调用“父”测试并设置skipReset = true
,这将使“子”测试跳过重置,从而保留会话数据(参见打印屏幕)。
但是,如果“子”测试是从未设置标志skipReset
的父测试运行的,则测试失败。
我想要这样做,这样“父”测试就不必复制粘贴到“祖父母”测试中,不包括会话重置行。有没有办法做到这一点?
发布于 2019-05-17 06:44:00
因此,我找到了一种适合预期用途的变通方法。
我在“祖父母”测试中设置了一个JavaScript sessionStorage变量,并在“子”测试中检查该JavaScript sessionStorage变量是否未定义且正确。
确保在设置sessionStorage变量之前打开一个页面,这样它在每次页面更改时都是持久的。请参见祖父母和子代测试的打印屏幕。
父测试仅由以下代码组成:
open | /other-page
run | Reset session // Child test
这样,如果链中没有测试定义JavaScript变量skipReset
,“子”测试才会执行重置代码。
发布于 2020-02-17 21:38:02
if "${skipReset}" == "$" + "{skipReset}"
只需使用字符串比较,在集成开发环境中未设置变量意味着没有任何替换,因此它只会保持原样('${skipReset}')。
发布于 2020-02-18 16:07:52
我在'1‘中设置了这样的变量,以便知道'child’函数应该运行还是不运行。如果变量为undifined或'0','child‘函数将不会运行。
store | 1 | flag or store | 0 | flag
if | ${flag} == 1|
code here...
end| |
https://stackoverflow.com/questions/56172729
复制相似问题