Selenium自动化测试 Verify

Selenium 找了很久,没有发现有verify的方法,可是,有个时候要的是确认,而不是直接断言,
当然要在运行结束后能够得到确认的结果,于是写了下面的代码,给大家分享。
 
 
import java.util.ArrayList;
import java.util.List;
import org.testng.Assert;

public class Assertion {
    public static boolean flag = true;
    public static List<Error> errors = new ArrayList<Error>();

    public void verifyBegin() {
        flag = true;                                                                    // flag默认为 true
      //  errors.clear();                                                                // 如果要@dataProvider每次都断言
    }

    public void verifyEnd() {
        Assert.assertTrue(flag, errors.toString());                    //如果flag为false、则输出放入堆栈中的 error
    }

    public void verifyEquals(Object actual, Object expected) {
        try {
            Assert.assertEquals(actual, expected);                   // 断言 assert 
        }
        catch (Error e) {
            errors.add(e);                                                           //如果断言为失败,将error写入堆栈
            flag = false;                                                              // flag 改为 false
        }
    }

    public void verifyEquals(Object actual, Object expected, String message) {
        try {
            Assert.assertEquals(actual, expected, message);
        }
        catch (Error e) {
            errors.add(e);
            flag = false;
        }
    }

    public void verifyTure(Boolean bl, String message) {
        try {
            Assert.assertTrue(bl, message);
        }
        catch (Error e) {
            errors.add(e);
            flag = false;
        }
    }

}
posted @ 2017-01-18 12:12  zhongmeizhi  阅读(1431)  评论(2编辑  收藏  举报
欢迎打⭐