gpt4 book ai didi

java - JUnit 理论和参数化测试之间的区别

转载 作者:IT老高 更新时间:2023-10-28 20:22:13 24 4
gpt4 key购买 nike

理论测试和参数化测试有什么区别?

我对创建测试类时的实现差异不感兴趣,只是当您选择一个而不是另一个时。

最佳答案

据我了解:通过参数化测试,您可以为测试用例提供一系列静态输入。

理论相似但概念不同。他们背后的想法是创建测试假设而不是静态值的测试用例。因此,如果我提供的测试数据根据某些假设是正确的,则结果断言始终是确定性的。这背后的驱动思想之一是您将能够提供无限数量的测试数据,并且您的测试用例仍然是正确的;此外,您通常需要在测试输入数据中测试各种可能性,例如负数。如果您静态测试,即提供一些负数,则不能保证您的组件将针对所有负数工作,即使很有可能这样做。

据我所知,xUnit 框架尝试通过创建您提供的测试数据的所有可能组合来应用理论的概念。

在处理数据驱动场景中的场景时,两者都应该使用(即只有输入发生变化,但测试总是一遍又一遍地执行相同的断言)。

但是,由于理论似乎是实验性的,因此我只会在需要测试输入数据中的一系列组合时才使用它们。对于所有其他情况,我会使用参数化测试。

关于java - JUnit 理论和参数化测试之间的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5727616/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com