gpt4 book ai didi

java - Arquillian 测试类变量失去值(value)

转载 作者:行者123 更新时间:2023-12-04 04:45:43 25 4
gpt4 key购买 nike

我有一个简单的 arquillian 测试类,有 2 个测试用例。测试类有一个静态变量,开头为空。第一个测试用例将为该变量设置一个值,但是当第二个测试开始时,该变量的值为空。我知道这不是正确的方法,因为一个测试取决于另一个,这只是一个例子。

另一个类似的情况,当我在 @BeforeClass 中设置静态变量的值时方法。当第一个测试执行时,变量将再次为空。仅当我使用 @Before方法会正确设置值,但是如果我有很多测试,并且变量的设置是时间密集型的,那么这将是一个糟糕的选择。

我不太明白为什么会这样。如果测试只是作为 JUnit 测试运行,那么静态变量会正常工作。有什么治疗方法吗?

该测试正在使用托管的 jboss 容器运行。

最佳答案

Junit不允许在测试用例之间/之间共享变量。在执行过程中,每个测试用例都有自己的变量本地副本。

这种设计背后的基本原理很简单,即测试用例不应相互依赖。这就是为什么它被称为单元测试,其中每个单元都应该独立测试。

但是如果你真的需要这样做,那么你可以创建一个 static类变量来存储信息。

关于java - Arquillian 测试类变量失去值(value),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18227973/

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