[唐胡璐]Selenium技巧 - 处理Windows程序(进程)

Selenium WebDriver java 提供了一个专门的WindowsUtils类去和Windows操作系统交互。

 

就像我们之前说过有时候跑完脚本后,IEDriverServer.exe进程没杀掉,以及处理的方法。但是有一些未知的情况下,还是会有这样的情况。

 

对测试环境的设置我们可以做一个更好的处理。在Test运行之前和之后,都去关掉相应的进程,这样的话,就算是跑完脚本后,一些相关进程没关闭,再下次运行的时候,也会重新设置运行环境。

以下的方法:

WindowsUtils.tryToKillByName("IEDriverServer.exe");

WindowsUtils.tryToKillByName("iexplore.exe");

 

WindowsUtils会去查询指定的进程名称,并kill掉所有运行的相关进程。这儿有一个小问题,如果当前指定进程不存在,就会抛出一个异常,但是也不会影响脚本的运行,Test会继续运行下一个步骤,只是查看的时候会有异常错误信息,感觉有点怪怪的。

 

解决方法:

我们可以在运行这个方法之前,先去判断进程是否存在,如果存在再执行,反之,就不执行。下面是个小例子:

这样的话,应该就不会再有上边说的那个异常了。

 

上边我们加了BeforeMethod和AfterMethod注释,这样我觉得一个好处就是在用例层,我们就不用再每次再专门弄一个setup去做一些设置,只有Test就好了。只是个人的一些拙见,也是在学习中,有任何不对的地方,还请多多指正:)

posted @ 2014-10-10 15:28  唐胡璐  阅读(369)  评论(0编辑  收藏  举报