在Selenium中使用带注释的系统属性的方法?

时间:2016-11-15 21:12:02

标签: java selenium testing annotations

有没有机会在Selenium中使用带有系统属性的annotatios?

@Test
public void
testSigninMobile()
{
   if(System.getProperty("browser").equals("iphone")){
        login();
   }else{
        driver.quit();
   } 

}

我想有这样的注释:

@Test if broswer is iphone, firefox but not if it is IE or Edge etc.
public void
testSigninMobile()
{...

我的意思是你有50个测试但你的应用程序没有为每个浏览器做好准备的情况。我认为写这些50测试这样的浏览器检查逻辑是愚蠢的吗?

1 个答案:

答案 0 :(得分:0)

您可以使用Capabilities - getBrowserName()在@Test方法中编写逻辑。

@Test
public void testSigninMobile()
{
   Capabilities cap = ((RemoteWebDriver) driver).getCapabilities();
   String browserName = cap.getBrowserName().toLowerCase();
   System.out.println(browserName);
   if("blabla".equalsIgnoreCase(browserName))
   {
      // Your code
   }
   else
   {
      throw new SkipException("Skipping this excecution");
   }
}