之前 运行 场景中的黄瓜重用价值
Cucumber reuse value from previously run scenario
我正在尝试重用在之前 运行 场景中创建的值。我不确定 Cucumber 中是否有一种方法可以跨场景提供价值。
例如:
第一种情况:
给定 inputOfA
创建 A 时
然后返回A
并且A包含一个Id
第二种情况:
给定 IdOfA
当客户通过 Id 获取 A 时
然后返回A。
对于第二种情况,如果我可以从第一种情况中获取创建的 Id 而不必在任何地方保留它,那就太好了。
你们中的任何人都可以告诉我这是否可以使用黄瓜,或者我是否必须保留在第一种情况下创建的 ID?
这不是你想要的。
这将要求场景以特定顺序执行。未指定场景执行顺序。它甚至可能是随机的。
你想要什么独立的场景。您可以按任何顺序执行的场景。
如果你想在未来的场景中使用一个场景的结果,你想要设置第二个场景来执行与前一个场景应该完成的相同的事情。这可能感觉像是重复,也许确实如此。但是 BDD 的用途是驱动实现。第一个场景用于驱动某些行为。第二种情况应该用来驱动另一种行为。
有可能在实施第二个场景时删除第一个场景。如果多余,请删除。
但无论你做什么,都要避免场景相互依赖的路径。它只会导致一个糟糕的地方,出现看似随机的错误。
我正在尝试重用在之前 运行 场景中创建的值。我不确定 Cucumber 中是否有一种方法可以跨场景提供价值。 例如:
第一种情况:
给定 inputOfA
创建 A 时
然后返回A
并且A包含一个Id
第二种情况:
给定 IdOfA
当客户通过 Id 获取 A 时
然后返回A。
对于第二种情况,如果我可以从第一种情况中获取创建的 Id 而不必在任何地方保留它,那就太好了。 你们中的任何人都可以告诉我这是否可以使用黄瓜,或者我是否必须保留在第一种情况下创建的 ID?
这不是你想要的。
这将要求场景以特定顺序执行。未指定场景执行顺序。它甚至可能是随机的。
你想要什么独立的场景。您可以按任何顺序执行的场景。
如果你想在未来的场景中使用一个场景的结果,你想要设置第二个场景来执行与前一个场景应该完成的相同的事情。这可能感觉像是重复,也许确实如此。但是 BDD 的用途是驱动实现。第一个场景用于驱动某些行为。第二种情况应该用来驱动另一种行为。
有可能在实施第二个场景时删除第一个场景。如果多余,请删除。
但无论你做什么,都要避免场景相互依赖的路径。它只会导致一个糟糕的地方,出现看似随机的错误。