selenium 使用junit4

上一篇 / 下一篇  2010-08-20 15:46:35 / 个人分类:selenium

Selenium的开发提供的SeleneseTestCaseJunit3风格的,放在JUnit4底下跑,JUnit4Annotation功能就用不起来了。Selenium要启动浏览器,如果用不上@BeforeClass的话,每次启动都初始化一下Selenium,开个IE或者Firefox,这个测试的效率可吃不消(也有比较麻烦的Workaround,但总觉得不是很好)。而甩开SeleneseTestCase的话,又舍不得那个在测试没有通过的时候自动截屏的功能。网络上有人已经有解决方法,我整理如下:、

编写MyRunListener,继承RunListener

importorg.junit.runner.notification.Failure;

importorg.junit.runner.notification.RunListener;

 

publicclassMyRunListenerextendsRunListener {

   @Override

   publicvoidtestFailure(Failure failure)throwsException {

      

   }

   }

编写MyRunner

importorg.junit.runner.notification.RunNotifier;

importorg.junit.runners.BlockJUnit4ClassRunner;

importorg.junit.runners.model.InitializationError;

 

publicclassMyRunnerextendsBlockJUnit4ClassRunner {

   privateMyRunListenermyRunListener;

 

     publicMyRunner(Class<?> c)throwsInitializationError {

        super(c);

        myRunListener=newMyRunListener();

     }

 

  @Override

   publicvoidrun(RunNotifier rn) {

         rn.addListener(myRunListener);

        super.run(rn);

 

   }

}

在测试代码中引入

@RunWith(MyRunner.class)

publicclassMyhomeTestextendsSeleneseTestCase {

  具体的参与地址是: http://rockhoppertech.com/blogs/archives/45


TAG: Selenium selenium junit4

小米啊的个人空间 引用 删除 小米啊   /   2010-08-21 11:11:49
 

评分:0

我来说两句

Open Toolbar