Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/398.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 手动触发EJB测试计划_Java_Glassfish_Ejb_Schedule - Fatal编程技术网

Java 手动触发EJB测试计划

Java 手动触发EJB测试计划,java,glassfish,ejb,schedule,Java,Glassfish,Ejb,Schedule,我有一个用javax.ejb.Schedule注释的方法: @Schedule(minute = "00", hour = "23") public void dailyTask() 它工作得很好,但出于端到端测试的目的,我想手动触发此方法,理想情况下不需要更改代码 我在谷歌上搜索了JVisualVM中的MBean,但没有成功。这可能吗?如何?只是一个想法:您可以将此组件注入测试用例中,手动调用此公共方法,例如,像这样(未测试): @Singleton public class YourCla

我有一个用
javax.ejb.Schedule
注释的方法:

@Schedule(minute = "00", hour = "23")
public void dailyTask()
它工作得很好,但出于端到端测试的目的,我想手动触发此方法,理想情况下不需要更改代码


我在谷歌上搜索了JVisualVM中的MBean,但没有成功。这可能吗?如何?

只是一个想法:您可以将此组件注入测试用例中,手动调用此公共方法,例如,像这样(未测试):

@Singleton
public class YourClass {
    ...
    @Schedule(minute = "00", hour = "23")
    public void dailyTask() {
        ...
    }


public class YourTestClass {
    @EJB
    private YourClass yourTestClass;
    ...
    void someTestMethod() {
        yourTestClass.dailyTask();
    }