【问题标题】:Difference between List<Action> and ActionSequence in jqwikjqwik中List<Action>和ActionSequence的区别
【发布时间】:2022-06-30 20:41:11
【问题描述】:

jqwik中的List&lt;Action&gt;ActionSequence之间到底有什么区别。

jqwik的文档中,ActionSequence是使用Arbitraries.sequences(...)创建的,List&lt;Action&gt;是使用Arbitraries.oneOf().list()创建的

因为ActionSequenceList&lt;Action&gt; 的目的是提供一个动作组合以相互运行。

请指导我。 谢谢:)

【问题讨论】:

  • ActionSequence 具有特定于在其上运行所有这些操作的方法,而 List 必须逐项迭代。
  • @Michael 你提到的是对的,但它是关于客户如何使用它,除此之外你知道任何影响点吗?喜欢什么时候选择哪一个?或两者只是相同但不同的数据类型

标签: java unit-testing automated-tests jqwik


【解决方案1】:

如果您想进行有状态测试,请始终使用ActionSequence。它具有使用 Action 的先决条件的内置功能,并且它的收缩行为针对该用例进行了优化。如果您改用List&lt;Action&gt;,则必须重新构建所有这些。

如果您需要介绍如何使用它,请查看https://jqwik.net/docs/current/user-guide.html#stateful-testing。更多详情请见https://blog.johanneslink.net/2018/09/06/stateful-testing/https://johanneslink.net/model-based-testing/

【讨论】:

  • 如果我的动作类不包含前置条件,那么它的工作方式与List&lt;Action&gt; 相同?还是最好使用ActionSquence
  • @SagarKhurana 收缩通常仍会使用ActionSequence 更有效。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-03-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多