我有一个测试方法里面我想验证一些事情,只有在我软测试方法断言后失败的测试类。SoftAssert在硒测试类
但是,我觉得我的测试方法越来越混乱与故障处理。我还没有找到任何有关这方面的最佳做法。有任何想法吗?如果我将断言移动到页面对象类中,它也会有点混乱。
@Test
public void test() {
// steps here
// then asserts here
SoftAssert soft = new SoftAssert();
String expectedHeaderText = "foo";
soft.assertTrue(pageObjectClass.isHeaderPresent(), "Unable to find the Header page object.");
soft.assertTrue(pageObjectClass.getHeader().contains(expectedHeaderText),
String.format("Expected to find '%s'. Page actually shows '%s'", expectedHeaderText, pageObjectClass.getHeader()));
// more asserts
sa.assertAll();
}
检查标题的存在似乎相当多余,然后检查标题中的文本。如果你退出第一个断言,并且只检查标题文本,你仍然断言同样的事情:头文件存在,文本是你所期望的。 保持断言在测试类,从来没有在页面对象类,因为这是没有道理的。页面对象类应该只有选择器和getter/setter以及其他页面相关的逻辑,不应该在那里做断言。 – jaredgilmore