package org.test4j.spec.printer; import org.test4j.spec.ISpec; import org.test4j.spec.inner.IScenario; import org.test4j.spec.inner.IScenarioStep; import org.test4j.spec.inner.ISpecPrinter; /** * @author darui.wudr 2013-1-22 上午9:43:22 */ public abstract class AbstractPrinter implements ISpecPrinter { @Override public final void printScenario(ISpec spec, IScenario scenario) { this.printHeader(spec, scenario); for (IScenarioStep step : scenario.getSteps()) { this.printStep(step); } this.printTailer(spec, scenario); } /** * 输出场景开始信息 * * @param scenario */ protected abstract void printHeader(ISpec spec, IScenario scenario); /** * 输出场景结束信息 * * @param scenario */ protected abstract void printTailer(ISpec spec, IScenario scenario); /** * 输出场景步骤信息 * * @param step */ protected abstract void printStep(IScenarioStep step); }