2012-11-18 41 views
0

我想写黄瓜JVM的一些步骤和我有一个一步近似像 以下黄瓜,JVM:多态性定步骤

@Given("I am a (regular|admin|guest) user") 
public void setUser(String userType){ 
    if("regular".equals(userType)) 
     setUserType(REGULAR); 
    if("admin".equals(userType)) 
     setUserType(ADMIN); 
    if("guest".equals(userType)) 
     setUserType(GUEST); 
} 

有没有更好的办法写这样一个步骤,让它变得多态?

回答

0

在某些时候,你需要有字符串,它是要设置类型之间的关系,因此,如果你不如果statmenet一样,想要大的,建立一个地图可能是途径走。

如何这样的事情....

public static Map<String,UserType> types = new HashMap<String,UserType>(); 
static { 
    types.put("regular", REGULAR); 
    types.put("admin", ADMIN); 
    types.put("guest", GUEST); 
} 

然后

@Given("I am a (regular|admin|guest) user") 
public void setUser(String userType){ 
setUserType(types.get(userType)); 
}