石墨烯抽象 - 断言的最佳实践

时间:2014-04-09 15:11:17

标签: java jboss-arquillian graphene2

我开始使用Graphene提供的Page Abstractions(页面对象和页面片段)编写测试。 我试图决定编写断言的最佳实践。具体来说,我试图决定断言应该位于何处。它应该在Page Fragment,Page Object还是Test类上?我习惯于在我的测试课程中使用所有断言,但那是" old"方式。

例如,断言元素是否具有css类可以通过以下方式进行:

// not working code just  an example  
@Test  
public void simpleTest(){  
     assertTrue (pageObject.getElementA.isDisplayed());  
}  

@Test   
public void simpleTest(){  
     pageObject.isElementADisplayed();  
}  

其中pageObject是Graphene定义的Page Object:

public class PageObject {  
     WebElement elementA;  
     public void isElementADisplayed(){  
          assertTrue(elementA.isDisplayed());  
     }  
}  

此外,页面可以轻松定义页面片段,而页面片段又可以具有断言。 对此有明显的最佳做法吗?

提前谢谢。

1 个答案:

答案 0 :(得分:1)

在PageFrragments中抛出AssertionErrors时,我总是遇到IllegalStateException。

我会说断言应该位于测试中,而页面和页面片段则提供您需要的信息。