繁体   English   中英

使用Spock生成测试中的对象列表

[英]Genarate list of objects in test using spock

我正在编写一个spock测试,其中我需要生成一些测试数据(夹具)。 我知道如何用Java完成它,但是无法在spock(groovy)中实现它。

我是groovy的新手,因此我提供了Java实现

Java实现如下:

List<Employee> employees= LongStream.range(1, 70).mapToObj(id -> {
        Employee emp = new Employee ();
        emp.setEmployeeId(id);
        return emp ;
    }).collect(Collectors.toList());

我正在尝试使用groovy实现相同的功能,但无法正确完成。

def employees = [1..70].each { id ->
        def emp = new Employee()
        emp.setEmployeeId(id)
        employees << emp
    }

评估解决常规代码的任何帮助。

[1..70]创建一个列表,其中包含一个元素是一个范围。 您想使用类似(1..70)东西:

(1..70).each{employees << new Employee(employeeId: it)}

附带说明:您可以通过使用collect创建一个列表来避免附加到列表中:

List<Employee> employees = (1..70).collect{new Employee(employeeId: it)}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM