我有一个环境枚举和一个应用程序枚举。每个应用程序也有自己的类,该类具有该应用程序的测试。我想在所有环境中运行每个测试,然后再进行下一个测试。这是我在main方法中的一部分
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();
现在它在一个环境中运行所有测试,然后在下一个环境中运行所有测试。提前谢谢。
答案 0 :(得分:0)
您的代码看起来不需要为测试迭代应用程序枚举,因为您可以在测试方法中访问它们(请参阅Application.ACCOUNTINVENTORY.getContextRoot()
)。
如果你真的想要重复你的枚举,你可以尝试mabye:
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);
}
...
}
希望有所帮助