Java如何以高效的方式为对象生成和分配属性?

Java如何以高效的方式为对象生成和分配属性?,java,automation,Java,Automation,我正在构建一个自动化测试程序,我希望它能够生成伪造的客户数据。为此,我做了如下工作: -创建了一个包含40个变量的客户对象 -创建了一个GustGenerator类来生成伪造数据并分配给Customer对象 //Customer object class public class Customer { public static final String EMAIL = "user.name@******.com"; public static final St

我正在构建一个自动化测试程序,我希望它能够生成伪造的客户数据。为此,我做了如下工作: -创建了一个包含40个变量的客户对象 -创建了一个GustGenerator类来生成伪造数据并分配给Customer对象

//Customer object class
public class Customer {

        public static final String EMAIL = "user.name@******.com";
        public static final String PHONE = "0956***2001";
        public static final String LAS_NAME = "Owen";
        public static final String FIN_PURP_TYPE = "ELP";
        public static final String ADDRESS = "User Address";
        private String title;
        private String firName;
        private String midName;
        private boolean isReqMet;
        private int media;
        ...... 40 attributes in total.
        ...... getters and setters
}

//Fake customer data generator.
public class CustGenerator {

    private Customer customer;
    private Faker faker = new Faker();

    private Customer firstName(Customer customer) {
        customer.setFirName(faker.name().firstName());
        return customer;
    }

    private Customer midName(Customer customer) {
        customer.setMidName(faker.name().lastName());
        return customer;
    }

    ......Generate data one by one.
}

我的问题是,有没有更好的方法来构建此功能?更简单、更高效。欢迎您的任何意见。非常感谢。

您可以通过在客户类中创建构造函数来实现:-

Public class Customer{

...create variables

Public Customer(bool random){
    If(random){
        //generate variables randomly
    }else{
        //initiallize what do you want
    }
}

}
我还建议,如果参数更大,那么创建一个字典,而不是创建很多变量,例如:-

Dictionary<string, object> vals = new Dictionary<string, object>();
Dictionary vals=new Dictionary();

如果您只使用字符串值,那么将第二个参数设置为字符串。

谢谢@Azhy,第一个建议非常好。关于Dictionary,我可以知道为什么你们认为Dictionary比object好吗?因为创建40个变量有些奇怪或者很难,一个dict可以用键和值轻松地完成它们所做的事情。