jjzjj

BeforeClass

全部标签

java - 为什么在 TestNG 中 @DataProvider 注释在 @BeforeClass 之前运行?

使用TestNG,为什么@DataProvider在@BeforeClass之前运行?似乎有时@DataProvider在@BeforeClass之前运行,有时却没有?有人知道原因吗? 最佳答案 这只是今天的实现方式,这对您来说有问题吗? 关于java-为什么在TestNG中@DataProvider注释在@BeforeClass之前运行?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questi

java - 在远程服务器上使用 Arquillian 时 @BeforeClass 注释调用方法两次

我们正在从使用带有嵌入式JBoss的TestNG过渡到使用带有远程服务器的Arquillian。我们正在运行一个简单的测试,该测试有一个用@BeforeClass注释的方法,该方法执行一些测试设置。经过大量挖掘后,似乎该设置方法被调用了两次:一次是在我们执行Maven命令以运行测试的控制台上,另一次是在将测试战部署到我们的远程服务器并运行测试时。这是两个独立的JVMS——一个在容器外运行,另一个在容器内运行。我的偏好是只运行后者。这是我应该期望的行为还是我可能遗漏了什么?现在,我们实际上是在检查我们是否在容器中,如果是,我们将运行我们的设置代码。这行得通,但我想知道是否有更好的方法。我

java - 在 JUnit 4 Java 中使用 @BeforeClass 和使用实例或静态变量有什么区别?

我是单元测试的新手。关于JUnit4中使用@Before注解的目的。我只是不知道使用它的意义:publicclassFoodTestCase{staticprivateFoodsandwich;@BeforeClasspublicstaticvoidinitialise(){sandwich=newSandwich();}}对比publicclassFoodTestCase{staticprivateFoodsandwich=newSandwich();}有什么区别? 最佳答案 在这种情况下可能没有必要,因为初始化非常简单。如果您有

java - 在 BeforeClass junit 的 TestExecutionListener 类中使用 Autowiring

我需要在junit中执行一个@BeforeClass方法,但使用Spring注入(inject)值,因此无法将private变量切换为static。我正在尝试执行此Listeners并创建一个Listener类,但我遇到了一个问题。我在这个类中也有需要Autowire的值,因为我想运行BeforeClass的方法调用@Autowired注入(inject)。但是,由于某种原因,它不起作用并且该值保持为空。有没有人遇到过这样的问题? 最佳答案 它不是最干净的,但它有效:publicclassMyTestListenerextendsA

java - JUnit @Parameterized 函数在测试套件中的@BeforeClass 之前运行?

我正在使用JUnit测试套件运行一些测试,其中一个测试使用@Parameterized运行多次。我发现当我运行测试时,@Parameterized函数在@BeforeClass之前运行。这是预期的行为还是发生了其他事情?我原以为@BeforeClass会在任何测试开始之前运行。这是我的测试套件:@RunWith(Suite.class)@SuiteClasses({Test1.class,Test2.class})publicclassTestSuite{@BeforeClasspublicstaticvoidsetup()throwsException{//setup,Iwantth

java - 在 JUnit @BeforeClass 中加载属性文件

在我的JUnit测试执行期间,我试图从我的类路径加载sample.properties,但它在类路径中找不到该文件。如果我编写一个JavaMain类,我就可以很好地加载文件。我正在使用下面的ant任务来执行我的JUnit。publicclassTesting{@BeforeClasspublicstaticvoidsetUpBeforeClass()throwsException{Propertiesprops=newProperties();InputStreamfileIn=props_.getClass().getResourceAsStream("/sample.propert

java - @parameters 方法在@beforeclass 方法之前执行

我正在使用junit4的“参数化”功能,我注意到@parameters方法在@beforeclass方法之前执行。这对我来说是个问题,因为我通过@parameters传递给测试用例的参数取决于@beforeclass方法中初始化的代码。例如@RunWith(Parameterized.class)publicclassTestOtherClass{Stringargument;privatestaticbooleaninitializeThis;publicTestOtherClass(Stringparameter)throwsException{argument=parameter

java - @BeforeClass注解: Junit vs TestNG

为什么JUnit中的@BeforeClass方法是static而在TestNG中它的non-static?TestNG是对JUnit的改进,那么他们为什么选择这种实现方式呢?因为@BeforeClass只运行一次,所以让它成为static比让它成为非static更有意义。同样在TestNG中,在哪个实例上调用了@BeforeClass方法?有人可以举个例子来更好地理解吗? 最佳答案 JUnit和TestNG的主要区别在于测试类实例化。JUnit总是为每个测试方法运行创建一个新的测试类实例。TestNG只创建一个测试类实例,然后运行该

junit @beforeclass注释在IDE中编译了罚款,但失败了maven build

当我编写一个简单的方法如下:@BeforeClasspublicvoidsetUp(){}它在Intellijidea和Eclipse中正确编译(使用内置IDE构建)。但是,相同的代码片段未能运行:Testsinerror:initializationError(TestClass):MethodsetUp()shouldbestatic在汇编过程中不应该捕获此错误吗?看答案保留类型@课前注释是RUNTIME,因此,当您执行它时将报告。

java - JUnit 的 assumeTrue 如何与 "before"和 "after"注释一起工作?

我正在寻找关于如何Assume.assumeTrue()的验证在JUnit工作。我想在@BeforeClass中使用它方法,以便在不满足条件时我可以避免运行我的测试套件。但是,我想知道该方法的性质。如果assumeTrue收到一个带有假值的参数,它是跳过方法的其余部分(用@BeforeClass注释)还是执行剩余指令的其余部分。我也很好奇它可能对注释方法的任何其他影响:@After@Before@AfterClass编辑:在通过非常基本的测试运行它之后,如果assumeTrue(false)曾经运行过,那么该方法的其余部分以及任何用@Test注释的方法都将被忽略@After或@Befo