java关闭页面6,Selenium Java关闭浏览器
在学习selenium的过程中发现一个问题,各种博客/教程都是教人用selenium的quit()和close()方法关闭浏览器。
但这不是我要的结果。这两个方法的前提是,用webdriver打开浏览器,执行脚本之后再关闭已经用webdriver打开的浏览器。
我的前提条件:在用webdriver打开浏览器之前先检查是否有浏览器已经打开,如果有,先关闭这些浏览器,然后执行webdriver脚本。
这个也是借鉴于HP QTP(HP UFT),当初QTP遇到已经有浏览打开就不知道哪个浏览器是它要运行的,所以每次在运行qtp之前先关闭所有浏览器。
虽然selenium不存在这个问题,但还是习惯每次运行selenium脚本之前关闭所有浏览器。
现在已经被MF收购了,该叫MF UFT了。MF于2018年收购了HP的UFT和loadrunner。
据说MF还租用了之前HP在上海张江高科金科路VIA2626号?的办公室。
回到正题,以下思路就是用java rumtime执行windows命令查找进程/关闭进程。
总感觉这不是最好的方法,但却是我目前知道的唯一方法(不知道selenium到底有没有自己的方法)。
贴上代码,以下代码只是关闭firefox,后期会继续完善:
importjava.io.BufferedReader;importjava.io.IOException;importjava.io.InputStreamReader;importjava.util.ArrayList;importjava.util.List;public classWindowsProcess {public static void main(String[] args) throwsInterruptedException {
WindowsProcess winp= newWindowsProcess();
winp.killProcess("firefox.exe");
}public void killProcess(String processName) throwsInterruptedException {try{
String line;
Process p= Runtime.getRuntime().exec("tasklist.exe");
BufferedReader input= new BufferedReader(newInputStreamReader(p.getInputStream()));while ((line = input.readLine()) != null) {
System.out.println(line);if (line.contains("firefox.exe")) {
System.out.println("Firefox is found.");
Runtime.getRuntime().exec("taskkill /F /IM " +processName);
}
}
}catch(Exception e) {
e.printStackTrace();
}
}
}
这里面用到了java的runtime类和它的getruntime方法,Process类,inpustring类。
getruntime的返回值是i一个runtime对象,process是一个抽象类。
关于这三个类的java官方API 文档:
https://docs.oracle.com/javase/8/docs/api/
关于runtime类的一些参考文章:
https://www.cnblogs.com/mingforyou/p/3551199.html
https://www.cnblogs.com/slyfox/p/7272048.html
java关闭页面6,Selenium Java关闭浏览器相关推荐
- java 浏览器测试,【Java资源大全】Selenium:基于浏览器的测试套件
(点击上方公号,可快速关注) 来源:http://hao.jobbole.com/ 作者:伯乐在线-唐尤华 Selenium是用于在多个平台上自动化操作浏览器的工具套件,支持多种浏览器.多种操作系统. ...
- java截全屏,Selenium+Java屏幕截图-网页全屏截图or当前可见内容截图
使用场景 WebUI自动化测试框架中错误截图方法,需要进行全屏幕截取or当前窗口截取 解决方案 导入Ashot的maven依赖,使用Ashot不同的截图策略 ru.yandex.qatools.ash ...
- Selenium常用操作——关闭页面和浏览器
目录 一.关闭页面 二.退出浏览器 一.关闭页面 from selenium import webdriver import time# 创建浏览器对象 driver = webdriver.Chro ...
- HTML页面点击按钮关闭页面的方式
这篇文章给大家分享HTML页面点击按钮关闭页面的几种方式,实现思路非常简单,有不带任何方式的关闭窗口,提示之后关闭页面,点击关闭本页面并跳转到其他页面等等,每种方式结合实例代码给大家介绍的非常详细,需 ...
- java 判断页面刷新_如何判断一个网页是刷新还是关闭的方法
页面加载时只执行onload 页面关闭时只执行onunload 页面刷新时先执行onbeforeunload,然后onunload,最后onload.这样我们可以在onbeforeunload中加一个 ...
- java使用selenium实现模拟浏览器操作API大全 模拟登录
java selenium 模拟登录 模拟浏览器 API大全 (一)环境安装之Java (二)环境安装之IntelliJ IDEA (三)环境安装之Selenium 1.通过jar包安装 2.通过Ma ...
- selenium+Java同时开启多个浏览器并行测试用例
在使用selenium+Java进行web自动化测试时,并行运行测试用例一般会在以下两个场景下使用:一是需要加快测试用例执行速度,减少测试时间:一是为了验证不同类型浏览器下web页面的兼容性.由于te ...
- java创建的窗口无法关闭_在Java中添加canvas后无法关闭窗口(Can't close window after adding canvas in Java)...
在Java中添加canvas后无法关闭窗口(Can't close window after adding canvas in Java) public class Screen extends Ca ...
- java 窗体隐藏和关闭_java JFrame窗体真正关闭
程序: package JFrame.bao; import java.awt.event.WindowAdapter; import java.awt.event.WindowEvent; impo ...
最新文章
- 图解Java中那18 把锁
- 第三代主流测序数据组装软件
- 在Eclipse中使用JUnit4进行单元測试(0基础篇)
- onpropertychange事件
- 解读鸿蒙轻内核的监控器:异常钩子函数
- 安装Qemu-6.1.0
- Flink 生态:Pulsar Connector 机制剖析
- dispaly 的block与inline-block的用法
- Redis客户端工具 支持使用Redis命令行和集群
- Java 基础实验 银行转账
- 计算机前沿讲座题目论文,计算机技术前沿讲座论文
- 基于JAVA实现的图形化页面置换算法
- jpa 动态查询条件 数组_利用JPA+querydsl实现多条件动态查询
- [精华] RDMA技术原理分析、主流实现对比和解析
- 【谷歌浏览器打不开Axure解决办法~】
- 蓝天白云青山绿水还有清风吹斜阳......
- Unity 对话气泡
- MAC 安装windows
- PYTHON实践——GUI界面
- 记一次nginx不能在浏览器访问默认目录/usr/share/nginx/html下面目录的问题