1、从github上下载源码
git clone https://github.com/hejiehui/xUnit
2、通过import一个maven项目导入eclipse,xunit项目是源码,xunit-sample是官方的例子。xunit基本的使用方式可以跟着例子慢慢学。editor是图形界面的编辑器,需要自行编译后放到eclipse的插件中。
3、新建一个普通的maven项目。使用xunit时一般是在资源文件夹里新建一个xunit文件,然后往图中添加各种单元。
4、新建MyContext类,实现Context接口,这个类是用于传参给xunit单元进行处理的
package com.sadoshi.xunit;
import com.xrosstools.xunit.Context;
public class MyContext implements Context {
private String label;
public String getLabel() {
return label;
}
public void setLabel(String label) {
this.label = label;
}
}
这里只设置一个label字段。实际开发中可设置更多字段,以及某些函数调用
5、新建一个MyProcessor类,实现Processor接口。这个类将是xunit中实际进行处理业务的类。
package com.sadoshi.xunit;
import java.util.Map;
import com.xrosstools.xunit.Context;
import com.xrosstools.xunit.Processor;
import com.xrosstools.xunit.UnitPropertiesAware;
public class MyProcessor implements Processor{
@Override
public void process(Context ctx) {
MyContext mc = (MyContext)ctx;
System.out.println(mc.getLabel());
}
}
这个例子仅仅是输出label的值
6、新建一个new_xross_xunit.xunit文件,新建一个Processor,改名为firstProcessor,并指定其类为MyProcessor。不指定的话则使用默认DefaultUnitImpl类。
7、新建Application类进行调用
package com.sadoshi.xunit;
import com.xrosstools.xunit.Processor;
import com.xrosstools.xunit.XunitFactory;
public class Application {
private void useMyProcess(XunitFactory f) throws Exception {
Processor p = f.getProcessor("firstProcessor");
MyContext ctx = new MyContext();
ctx.setLabel("abc");
p.process(ctx);
}
public static void main(String[] args) throws Exception {
XunitFactory f = XunitFactory.load("new_xross_unit.xunit");
Application app = new Application();
app.useMyProcess(f);
}
}
程序首先通过XunitFactory.load加载xunit文件,然后通过刚才processor的命名获取对应Processor,这里获取名为firstProcessor的processor,之后设置MyContext的label值并作为参数传入MyProcessor的process方法中。
最终运行Application输出了label的值