java和actionscript类没有被模仿

java和actionscript类没有被模仿,java,testing,actionscript,mockito,powermock,Java,Testing,Actionscript,Mockito,Powermock,我正在尝试为java控制器编写moct测试。当我作为junit运行它时,它工作得很好,但当我在构建中运行时,它会失败 这是我的测试课 @WebAppConfiguration @RunWith(PowerMockRunner.class) public class myTestClass { private MockMvc mockMvc; @Mock MyActionScript myActionScript; // It is failing here

我正在尝试为java控制器编写moct测试。当我作为junit运行它时,它工作得很好,但当我在构建中运行时,它会失败

这是我的测试课

@WebAppConfiguration
@RunWith(PowerMockRunner.class)

public class myTestClass  {

    private MockMvc mockMvc;

    @Mock
    MyActionScript myActionScript; // It is failing here

    @Mock
    MyBaseClass myBaseClass;  // It is failing here


    @InjectMocks
    MyControllerClass myControllerClass;

    @Before
    public void setUp() throws Exception {
        MockitoAnnotations.initMocks(this);
        mockMvc = MockMvcBuilders.standaloneSetup(MyControllerClass).build();
    }

    @Test
    @PrepareForTest({TestClass.class})
    public void testmyMethod()throws Throwable{
       //SOme code
    }
}
这里的问题是,只要我试图模拟我的actionscript类或myBaseClass,它就会失败

这是我的控制器类

@Controller
public class ReportsController extends BaseController {
    @RequestMapping(value = "/someurl", method = RequestMethod.POST, consumes = "application/json")
    public @ResponseBody somePojo methodList(@RequestBody somePojo requestObj) throws Exception {
        somePojo response = (somePojo) this.execute(requestObj,SOME_CONSTANT);
        return response;
    }
}
我的控制器类扩展到某个抽象类

这是我的基础课

@Controller
public abstract class myBaseClass extends myActionScript {
    //Some Code and some methods
}
如果您还需要什么,请告诉我。

尝试使用
@RunWith(MockitoJUnitRunner.class)
@InjectMocks
@Mock
注释

您是否在MyControllerClass中使用MyActionScript和MyBaseClass? 如果是,请尝试以下操作:

@WebAppConfiguration
@RunWith(MockitoJUnitRunner.class)
public class myTestClass  {

    private MockMvc mockMvc;

    @Mock
    MyActionScript myActionScript; // It is failing here

    @Mock
    MyBaseClass myBaseClass;  // It is failing here

    @InjectMocks
    MyControllerClass myControllerClass;

    @Before
    public void setUp() throws Exception {
        MockitoAnnotations.initMocks(this);
        mockMvc = MockMvcBuilders.standaloneSetup(MyControllerClass).build();
    }

    @Test
    @PrepareForTest({TestClass.class})
    public void testmyMethod()throws Throwable{
       //SOme code
    }
}

谢谢你的回答。是的,我正在从actionScript扩展我的基类。我照你的建议做了。在maven构建中仍然会遇到相同的错误。正在运行com.jpmc.wss.adr.controller.reportsControllerTestLog4j:警告找不到记录器的附加程序(com.frmwrk.geek.bootstrap.BootstrapServicesInitializer)。log4j:WARN请正确初始化log4j系统。我问了另一个问题,我在哪里发布了完整的日志。请检查这个问题。