是否有任何warappers / utils可用于在Groovy中读取Excel文件.我正在寻找类似于Groovy sql的行函数的东西,如下面的spock测试示例所示.我的目的是将其用于
data driven testing using excel in Spock test framework
import groovy.sql.sql import spock.lang.* class DatabaseDriven extends Specification { @Shared sql = sql.newInstance("jdbc:h2:mem:","org.h2.Driver") // normally an external database would be used,// and the test data wouldn't have to be inserted here def setupSpec() { sql.execute("create table maxdata (id int primary key,a int,b int,c int)") sql.execute("insert into maxdata values (1,3,7,7),(2,5,4,5),(3,9,9)") } def "maximum of two numbers"() { expect: Math.max(a,b) == c where: [a,b,c] << sql.rows("select a,c from maxdata") } }
解决方法
我的一位GUG成员创建了一个使用Apache POI与Excel一起工作的工具,其方式与您描述的方式非常相似.它尚未正式进入图书馆(AFAIK),但可以在他的博客上找到.
它允许您编写如下代码:
new ExcelBuilder("customers.xls").eachLine([labels:true]) { new Person(name:"$firstname $lastname",address:address,telephone:phone).save() }
在这里查看:http://www.technipelago.se/content/technipelago/blog/44