小编Cod*_*ers的帖子

在@Rule中并行化测试执行

我想重用一些集成测试来进行负载测试.我实现了一个由注释参数化的规则:

@Target(ElementType.METHOD)
@Retention(RetentionPolicy.RUNTIME)
public @interface Parallel {

    int invocations() default 1;

    int rampUpTime() default 0;
}
Run Code Online (Sandbox Code Playgroud)

在我的规则实现中,评估注释并设置一个语句,该语句具有如下的evaluate方法:

@Override
public void evaluate() throws Throwable {
    ScheduledExecutorService exe = Executors.newScheduledThreadPool(invocations);

    for (int i = 0; i < invocations; i++) {
        ScheduledFuture<?> scheduledFuture = exe.schedule(new Runnable() {

            @Override
            public void run() {
                try {
                    invocated++;

                    // Request test = Request.method(description.getTestClass(), description.getMethodName());
                    // new JUnitCore().run(test);

                    statement.evaluate();
                } catch (Throwable e) {
                    e.printStackTrace();
                }
            }
        }, i * rampUpTime, this.timeUnit);
        futures.add(scheduledFuture);
    }
}
Run Code Online (Sandbox Code Playgroud)

因此,evaluate …

java junit junit-rule

7
推荐指数
1
解决办法
452
查看次数

将捆绑软件从在Tycho中启动SWTBot测试中排除

我正在使用SWTBot为RCP应用程序运行UI测试,当在Eclipse IDE中启动测试时,该测试工作正常。现在,我想在Maven中运行测试,到目前为止也可以运行。不幸的是,通过依赖关系链org.eclipse.swtbot.eclipse.finder --> org.eclipse.ui.editors --> org.eclipse.ui.ideorg.eclipse.ui.ide它也存在于运行测试的应用程序中。使用此捆绑软件,会出现一些意外的菜单项,并且应该在测试运行时中排除捆绑软件。如何做到这一点?

在eclipse中运行测试时,我只是org.eclipse.ui.ide在SWTBot测试启动配置中排除了捆绑软件,一切都按预期进行了。

eclipse tycho maven swtbot

3
推荐指数
1
解决办法
597
查看次数

标签 统计

eclipse ×1

java ×1

junit ×1

junit-rule ×1

maven ×1

swtbot ×1

tycho ×1