将 EJB 注入 JUnit 测试类

vde*_*ris 5 java junit unit-testing ejb jakarta-ee

我定义了一个EJB如下:

@Stateless
@LocalBean
public class Foo {

    @Inject
    private Boo boo;

    public void doSomething() {
        boo.doOther();
    }

}
Run Code Online (Sandbox Code Playgroud)

和:

@Named
@RequestScope
public class Boo {

    public void doOther() {
        // I do, I do...
    }

}
Run Code Online (Sandbox Code Playgroud)

我想将FooEJB 注入JUnit 测试类

import org.junit.*

public class FooTest {

    @EJB
    private Foo foo;

    @Test
    public void doSomethingTest() {
        foo.doSomething();
        assertTrue(true);
    }

}
Run Code Online (Sandbox Code Playgroud)

...但此代码返回一个NullPointerException.

怎么了?如何使用Java EE CDI正确定义该测试?