51Testing软件测试论坛

标题: Selenium+JUnit,如何兼顾oneTimeSetup和verify断言? [打印本页]

作者: allenzhao28    时间: 2009-11-25 17:51
标题: Selenium+JUnit,如何兼顾oneTimeSetup和verify断言?
目前在用selenium做公司的web测试,在测试中为了只创建一次数据库链接,使用如下结构
/************************************
public class Tester {
@BeforeClass
public static void oneTimeSetup() {
     // init connection here
}

@AfterClass
public static void oneTimeTearDown() {
    // release resources
}

@Test
public void Test1()  {
    assert one;
    assert two;
    click link;
}

@Test
public void Test2() {
}
}
************************************/
我希望Test1中的assert失败后,测试能继续执行,如click link,但是在JUnit中不支持verify。
Selenium本身提供了verify和assert两种断言,但是Selenium中如何做到oneTimeSetup?
我进入一个两难境地,各位一起研究一下吧?
作者: allenzhao28    时间: 2009-11-25 18:04
自己顶一下
作者: park_p    时间: 2009-11-25 19:46
标题: 捕获Throwble异常试试
在assert除捕获Throwble异常试试,自己把抛出的Exception和Error都吞了,在catch报告到日志里。
不过我想最好别这么做,毕竟你吞了Error级的错误:)
作者: park_p    时间: 2009-11-25 19:48
如果能自己手动比较检查点的话,就最好不用assert,这样你就好控制了,哈哈哈~
作者: allenzhao28    时间: 2009-11-26 10:57
每个页面都有很多检查点,自己写的话,效率不高啊。
作者: park_p    时间: 2009-11-26 11:46
那就捕获Throwble异常类试试吧
作者: allenzhao28    时间: 2009-11-26 14:11
我自己重新试了下,在测试类里加入了seleneseTestBase对象,直接调用其verfiy方法。

思路和park兄是一致的,不过是捡了现成。:)
作者: park_p    时间: 2009-11-26 15:13
呵呵,能解决问题就好。
你说的一致是指:seleneseTestBase对象的verfiy方法也是用捕获Throwble异常类来进行的么?
作者: allenzhao28    时间: 2009-11-26 15:26
seleneseTestBase类中的verifyXXX方法会先将错误捕获,然后加入到一个stringbuffer对象,最后再tearDown方法中打出。
作者: 同同爱学习    时间: 2009-12-2 16:53
轻轻路过
作者: goal1860    时间: 2009-12-9 13:02
TestNG什么都可以帮你搞定,怎么还在用junit呢?
作者: danganxi521    时间: 2011-2-24 13:25
需要用单例模式




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2