编写 SettersMap 类
有了配置文件,我们需要编写代码从配置文件中读取测试数据。我们用一个接口类“SettersMap”来代表一个配置文件。参见图 1。附件“rule_test.zip”中的 BaseSettersMap.java 是 SettersMap 接口的一个实现。
图 1. SettersMap.java
我们提供了一个工厂接口 SettersMapFactory 来构造 SettersMap 。这里采用了抽象工厂(Abstract Factory)的设计模式。
清单 3. SettersMapFactory.java
view plaincopy to clipboardprint? 1. /* 2. * Created on 2008-3-13 3. * 4. * TODO To change the template for this generated file go to 5. * Window - Preferences - Java - Code Style - Code Templates 6. */ 7. package attributetest.binding.spi; 8. 9. import java.io.File; 10. 11. /** 12. * @author jsl 13. * 14. * TODO To change the template for this generated type comment go to 15. * Window - Preferences - Java - Code Style - Code Templates 16. */ 17. public interface SettersMapFactory { 18. 19. /** 20. * 21. * @return Factory 的名字 22. */ 23. String getName(); 24. 25. /** 26. * 从配置文件创建 SettersMap ; 27. * @param file 配置文件对应的 File 对象; 28. * @return 根据配置文件创建的 SettersMap 29. */ 30. SettersMap createSettersMap(File file); 31. 32. /** 33. * 34. * @return 配置文件的扩展名,如 ".xls", ".txt" 。通常,SettersMapFactory 的类型 35. * 和配置文件的类型有一一对应的关系。 36. */ 37. String getConfFileExtension(); 38. } |
对于不同的文件格式,需要提供不同的“ SettersMapFactory ”。附件“ rule_test.zip “中的“ ExcelSettersMapFactory.java ”是一个 Excel 格式的实现。
相关阅读: