gpt4 book ai didi

java - 需要在 Java 方法中传递多个(20+)参数。有什么有效的方法可以做到这一点吗?

转载 作者:行者123 更新时间:2023-12-01 16:55:23 28 4
gpt4 key购买 nike

我在 Java 类中有多个方法,每个方法都有 20 多个参数。我将在另一个类中为该类创建一个对象并调用每个方法。通常我在 Selenium Java 中使用 POM(页面对象模型)。因此,在每个 Page 对象类中,每个方法都有多个(20+)个参数,我将在测试类中调用这些参数。

页面对象类:

public void enterShipInfo(String IMO,String Vstat,String Vcode,String Vname,
String Vtype,String Officialno,String Buildyr,String Shipyard,String Hullno,String Layingdate,
String Launcheddate,String Deliverdate,String Reportinclude,String Portregistry,String VFlag,
String Vstatus,String Classification,String Classid,String Classnotation,String PI,String HM,
String Regowner,String Shipmanager,String Comoperator,String Callsign,String SSR,String Factor,
String ELOG,String Vcomments,String VsisIMO,String Chartertype,String Showonweb){

}

.... Other Methods with similar long list of parameters

然后在测试类中,我再次为这些创建参数:

public class VesTest {

@Test(dataProvider="Ves",priority=1)
public void createVesTest(String IMO,String Vstat,String Vcode,String Vname,
String Vtype,String Officialno,String Buildyr,String Shipyard,String Hullno,String Layingdate,
String Launcheddate,String Deliverdate,String Reportinclude,String Portregistry,String VFlag,
String Vstatus,String Classification,String Classid,String Classnotation,String PI,String HM,
String Regowner,String Shipmanager,String Comoperator,String Callsign,String SSR,String Factor,
String ELOG,String Vcomments,String VsisIMO,String Chartertype,String Showonweb

Mdr_Vessel obj_Mdr_Vessel = page(Mdr_Vessel.class);

obj_Mdr_Vessel.clickSubmenu();
.....

}

有什么有效的方法可以减少在测试类中再次输入参数???我不想将方法分解为多个方法。所以请建议我一种有效传递参数的方法

最佳答案

您可以创建新对象来对参数进行分组,然后在方法签名中使用它们。例如:

public class VParameter {
String Vstat;
String Vcode;
String Vname;
String Vtyp;

关于java - 需要在 Java 方法中传递多个(20+)参数。有什么有效的方法可以做到这一点吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33666787/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com