[英]How would I make my methods loop through an enum?
我有一個環境枚舉和一個應用程序枚舉。 每個應用程序也都有自己的類,該類對該應用程序進行測試。 我要在所有環境中運行每個測試,然后再進行下一個測試。 這是我主要方法中的一部分
for(Environment env :Environment.values())
{
new AccountInventory(env);
AccountInventory.accountInventoryTests(null, env);
new AuditActionItems( env);
AuditActionItems.auditActionItemTests(null, env);
new SalesPipeline(env);
SalesPipeline.salesPipelineTests(null, env);
這是我課堂上的一個例子
public static boolean accountInventoryTests(Application app, Environment env)
{
WebDriver driver = new InternetExplorerDriver();
try{
driver.get(env.getDomain() + Application.ACCOUNTINVENTORY.getContextRoot());
driver.findElement(By.name("j_username")).sendKeys(USER);
driver.findElement(By.name("j_password")).sendKeys(PASSWORD);
driver.findElement(By.cssSelector("input[type='submit']")).click();
現在,它在一個環境中運行所有測試,然后在下一環境中運行所有測試。 提前致謝。
您的代碼看起來不需要迭代測試的應用程序枚舉,因為您可以在測試方法中訪問它們(請參閱Application.ACCOUNTINVENTORY.getContextRoot()
)。
如果您確實想迭代枚舉,可以嘗試以下方法:
for(Environment env :Environment.values())
{
new AccountInventory(env);
for(Application app: Application.values())
{
AccountInventory.accountInventoryTests(app, env);
}
new AuditActionItems( env);
for(Application app: Application.values())
{
AuditActionItems.auditActionItemTests(app, env);
}
...
}
希望能幫助到你
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.