
java
df0128
在路上
展开
-
[java学习笔记]逻辑运算中长路运算与短路运算区别
逻辑运算分“与”,“或”,“非”三种,运算符号依次为“&”,“|",”!“,而与和或又分为长路和短路运算:短路与运算符号为”&&“,短路或运算的符号为”||“,其区别在于,长路运算会将逻辑运算符两侧的运算先执行完成后再进行逻辑运算 , 而短路运算先执行逻辑运算符左侧的部分,如果符合要求则直接输出逻辑运算结果,而不再对右侧的进行运算。如短原创 2015-04-11 17:40:46 · 3127 阅读 · 0 评论 -
JAVA获取当前时间和将已有的long类型时间转换为年月日时分秒格式
代码如下:public class DateUtil { /** * 根据格式获取当前格式化时间 * @param format 格式化方式,基础格式为yyyy-MM-dd HH:mm:ss * @return 当前时间 */ public static String getCurrentTimeByFormat(String format) { SimpleDat...原创 2018-09-19 23:17:51 · 12474 阅读 · 0 评论 -
【selenium3+JAVA】界面自动化测试教程(一)——浏览器的启动之chrome浏览器的启动
一、环境本机安装jdk1.8本机安装eclipseeclipse添加maven组件新建maven工程并在POM.xml中添加如下字段:<dependency> <groupId>org.seleniumhq.selenium</groupId&gt原创 2018-09-20 19:03:15 · 10167 阅读 · 2 评论 -
【selenium3+JAVA】界面自动化测试教程(一)——浏览器启动之firefox浏览器的启动
前言由于使用selenium3,故启动firefox浏览器时已经不能像以前那样不需要driver就可以启动了,需要添加driver,driver名称为geckodriver.exe,下载地址:https://github.com/mozilla/geckodriver/releases启动firefox浏览器1、设置驱动如前言所述,由于selenium3更新,导致现在启动firefox也需...原创 2018-09-21 23:15:36 · 2404 阅读 · 0 评论 -
【selenium3+JAVA】界面自动化测试教程(一)——浏览器的启动之IE浏览器的启动
前言同chrome、firefox,ie浏览器的启动一样需要driver,但是IEDriver不像chromeDriver一样有多个版本,不同版本对应不同的chrome版本,它只有32位版本和64位版本两种;下载地址为:https://www.seleniumhq.org/download/启动IE浏览器1、设置驱动设置驱动代码如下,第二个参数即为驱动的路径,可以任意设定:System...原创 2018-09-22 15:26:36 · 1591 阅读 · 1 评论 -
【selenium3+JAVA】界面自动化测试教程(二)——浏览器的关闭和基础方法
浏览器的关闭有两个方法,如下所示:System.setProperty("webdriver.chrome.driver", "D:\\test\\driver\\chromedriver.exe");ChromeDriver chrome = new ChromeDriver();chrome.close();chrome.quit();close和quit方法都可以关闭浏览器,不同...原创 2018-09-22 17:34:41 · 1726 阅读 · 0 评论 -
【selenium3+JAVA】界面自动化测试教程(三)——浏览器的全屏、最大化和设定大小位置
1、浏览器全屏使用代码如下:ChromeDriver chrome = new ChromeDriver();chrome.manage().window().fullscreen();如上代码会把浏览器全屏,效果嘛就是除了网站的内容部分,其他全部不显示;2、浏览器最大化使用代码如下:ChromeDriver chrome = new ChromeDriver();chrome....原创 2018-09-22 17:45:53 · 4669 阅读 · 0 评论 -
【HttpClient】HttpClient4.5基础教程
一、前言1、说明HttpClient是一个目前最常用的用于模拟客户端发送http请求的工具,可用于接口自动化测试或者爬虫或者在项目中加入获取其他网站数据等;支持目前所有的请求方式,如put,post,get,delete等;2、maven依赖添加maven依赖如下:<dependency> <groupId>org.apache.ht原创 2018-10-14 22:48:43 · 10724 阅读 · 0 评论 -
【接口测试】【HttpClient】使用HttpClient4+testNG进行简单的接口测试
一、HttpClient使用HttpClient使用方法详见教程https://mp.youkuaiyun.com/mdeditor/83043457#二、testNGmaven 的pom添加如下:<dependency> <groupId>org.testng</groupId&原创 2018-10-19 17:20:08 · 1565 阅读 · 0 评论 -
【JAVA】JAVA基础之冒泡排序
如下要将数组进行从小到大的排序,可以使用如下冒泡算法:public static void main(String[] args) { long[] times = {23,43,22,11,66,34,89,324,44,63}; long start; for (int i = 0; i < times.length-1; i++) { for (int j ...原创 2018-12-04 10:47:01 · 172 阅读 · 0 评论 -
【TestNG】使用程序调用TestNG时报java.lang.NoClassDefFoundError: org/testng/TestNG
今天在使用程序方法调用TestNG的时候抛了异常,如下:代码如下:String xmlPath = System.getProperty("user.dir")+"\\testXml\\DefaultTest.xml";TestNG test = new TestNG();List<String> suites = new ArrayList<String>();...原创 2018-11-28 18:14:00 · 7053 阅读 · 0 评论 -
【CSV】使用javacsv读取和写入csv文件
maven配置<dependency> <groupId>net.sourceforge.javacsv</groupId> <artifactId>javacsv</artifactId> <version>2.0</version></dependency>代码原创 2018-12-03 09:53:26 · 1378 阅读 · 0 评论 -
【JAVA】删除整个文件夹(深度删除)
对于有多层内容的文件夹来说,要删除的话就需要编写代码进行迭代操作,才能将文件夹内部多层级下的文件和文件夹均删除掉,代码如下: /** * 迭代删除文件夹 * @param dirPath 文件夹路径 */ public static void deleteDir(String dirPath) { File file = new File(dirPath); if(f...原创 2018-12-04 09:22:33 · 25027 阅读 · 7 评论 -
java获取当前jar包所在目录
原本获取工程目录使用方法System.getProperty("user.dir");但是打完包放在linux机器上跑的时候发现无法正确获取到该jar包所在目录,导致无法运行;网上查阅后修改为如下方法:public String getPath() { String path = this.getClass().getProtectionDomain().getCodeSource()...原创 2019-05-23 17:32:44 · 29855 阅读 · 3 评论 -
java获取系统属性System.getProperty
获取系统参数使用方法System.getProperty(property);property为要获取的系统属性的key;系统属性key列表如下:键值java.versionJava 运行时环境版本java.vendorJava 运行时环境供应商java.vendor.urlJava 供应商的 URLjava.homeJava 安装目录ja...原创 2019-05-23 17:44:22 · 577 阅读 · 0 评论 -
【selenium3+JAVA】界面自动化测试教程(十二)——执行javaScript
selenium执行js就比较简单了,代码如下:JavascriptExecutor js = (JavascriptExecutor) driver;js.executeScript(String script, object... args);其用法就是执行js脚本,有一个常见用法就是用js来滚动页面,使用方法见链接:https://blog.youkuaiyun.com/df0128/artic...原创 2018-09-25 14:28:02 · 620 阅读 · 0 评论 -
【selenium3+JAVA】界面自动化测试教程(十)——鼠标键盘操作
有时候在使用selenium的时候会发现无法直接点元素,比如有的选择框是在我们鼠标放置在某个位置后才会出现,如果鼠标不在那个位置,选择框是不可见的,同样就无法点击,那么这时候我们就需要进行鼠标或者键盘操作了,selenium同样提供了鼠标键盘操作的方法,如下所示:System.setProperty("webdriver.chrome.driver", "D:\\test\\driver\\ch...原创 2018-09-25 14:20:13 · 1913 阅读 · 0 评论 -
@RequestMapping 和 @GetMapping @PostMapping 区别
@RequestMapping 和 @GetMapping @PostMapping 区别@GetMapping是一个组合注解,是@RequestMapping(method = RequestMethod.GET)的缩写。@PostMapping是一个组合注解,是@RequestMapping(method = RequestMethod.POST)的缩写。 转自https://...转载 2018-04-14 11:08:34 · 1072 阅读 · 0 评论 -
使用java+OpenCV进行图片对比并标记差异部分(支持中文图片路径)
设计方法为:首先将两个图片转化为灰度图;进行灰度图比对,1为完全相同,此处可以插入阀值;计算两个灰度图的绝对差值并放入一个新的Mat对象;将新的mat对象进行绝对差值化;寻找轮廓图并用红色进行标记;输出到新图片中;代码块如下所示/** * 比较两张图片,如不同则将不同处标记并输出到新的图片中 * @param imagePath1 图片1的路径...原创 2018-05-18 23:15:21 · 10599 阅读 · 12 评论 -
java全屏截图代码实现
工作中,有时候会遇到需要截图的时候,如下示例两种为一个简单的实现java屏幕截图的方法,使用robot和ImgIO来实现,代码如下: private static String defaultImageFormat="png"; public static Dimension d = Toolkit.getDefaultToolkit().getScreenSize();...原创 2018-05-25 15:36:55 · 2143 阅读 · 0 评论 -
java比较两个时间
工作中遇到需要将两个时间进行比对,所以书写如下方法来实现:public static void main(String[] args) { boolean tof = compareTime("2018-05-11", "2018-05-12", "yyyy-MM-dd"); System.out.println(tof); } publ...原创 2018-05-23 17:17:53 · 2663 阅读 · 0 评论 -
JAVA数组初始化
JAVA数组初始化主要有两种方式,如下: dataType[] arrayRefVar;或者dataType arrayRefVar[]; 其中dataType可以是java支持的八中数据类型的任意一种,前者为首选方法; 通常用法如下:创建一个包含n个元素的数组对象:double[] list = new double[n];//此为动态初始化初始化一个固定内容的数组:doub...原创 2018-05-24 15:56:15 · 16315 阅读 · 1 评论 -
【selenium3+JAVA】界面自动化测试教程(四)——浏览器的打开url、前进、后退、刷新和cookie的操作
1、打开url这里打开网址有两个方法,如下所示:System.setProperty("webdriver.chrome.driver", "D:\\test\\driver\\chromedriver.exe");ChromeDriver chrome = new ChromeDriver();//第一种方法chrome.navigate().to("https://www.baidu...原创 2018-09-23 17:28:46 · 1734 阅读 · 1 评论 -
【selenium3+JAVA】界面自动化测试教程(五)——等待设置
超时设置分为三种,分别为显性等待,隐性等待和强制等待,如下所示:1、隐式等待此等待方式为全局共用,此处共有三个方法,分别为查找元素的等待超时时间、页面加载等待超时时间和js脚本运行超时时间,方法如下代码所示System.setProperty("webdriver.chrome.driver", "D:\\test\\driver\\chromedriver.exe");ChromeDri...原创 2018-09-23 17:52:33 · 986 阅读 · 0 评论 -
【selenium3+JAVA】界面自动化测试教程(六)——元素查找和操作
一、前言元素查找为selenium的基础操作,基本上大部分操作都是基于元素的,故此部分为必须掌握内容,方法包括通过名称、id、tagName、xpath等方法,下面会详细介绍这些方法;二、元素查找下面一一介绍这些方法,无论哪种查找方式,记得都应该在网站的开发者工具中使用自己写的查找方法去搜索下,看出来的元素是否是自己所需要的,以避免代码运行的时候出现元素查找不到的情况;(后边所有范例均在百...原创 2018-09-24 11:48:43 · 2157 阅读 · 0 评论 -
【selenium3+JAVA】界面自动化测试教程(七)——frame切换方法
在selenium的使用过程中,有时候会发现网站会有frame这种东西,如果某个元素在frame中,直接进行查询是无法查询到的,那么这时候就需要先切换frame再进行元素查找; 1.切换到顶层frame:driver.switchTo().defaultContent();2.切换到frame: 通过元素直接切换WebElement element = driver.find...原创 2018-05-17 17:22:11 · 2256 阅读 · 0 评论 -
【selenium3+JAVA】界面自动化测试教程(八)——切换窗口
有时候有多个窗口,测试的时候需要在这多个窗口中切换,可以用如下方法;/** * 切换窗口 * @param driver webDriver * @param windowsTitle 要切换到的windows的title * @return */ public static boolean switchWindows(WebDriver...原创 2018-09-24 12:26:34 · 1077 阅读 · 1 评论 -
【selenium3+JAVA】界面自动化测试教程(九)——select多选框的选择
在网页中有一种标签是select,其下子元素都是option,暂时找不到例子,就不写范例了,主要方法如下所示:System.setProperty("webdriver.chrome.driver", "D:\\test\\driver\\chromedriver.exe");ChromeDriver chrome = new ChromeDriver();//根据select元素获取sel...原创 2018-09-24 22:01:41 · 973 阅读 · 0 评论 -
JAVA执行cmd命令(包含执行批处理文件)
如下是java执行cmd命令的代码,以作记录:内容包括执行单个cmd命令或者调用bat文件的方法;import java.io.BufferedReader;import java.io.InputStreamReader;/** * 执行windows的cmd命令工具类 * @author dufei * */public class CMDUtil { /** * ...原创 2018-09-19 18:59:47 · 16825 阅读 · 2 评论 -
【selenium3+JAVA】自动化测试教程(十一)——浏览器全屏截图与元素截图
在做界面自动化时,很需要截图功能,譬如在异常发生时或者验证点失败时,这样可以快速的定位失败原因,但是如果使用界面截图的方式虽然会把这个屏幕截下来,但是缺点在于机器不能睡眠,如果睡下去则会发现截图是黑的; 其实我们可以使用selenium的截图功能,这种方式只会截取网站的部分(如顶部的浏览器输入框之类则不会截取),其优点在于在截图时操作电脑不会影响截图,未登录状态也受影响; 方法如下(drive...原创 2018-05-17 11:44:32 · 3107 阅读 · 0 评论 -
java获取系统环境变量System.getenv()
java获取系统环境变量使用方法为System.getenv()(获取全部的环境信息),System.getenv(key)(获取某个环境信息);key的常用值如下表所示:键说明USERPROFILE用户目录USERDNSDOMAIN用户域PATHEXT可执行后缀JAVA_HOMEJava安装目录TEMP用户临时文件目录SystemD...原创 2019-05-23 17:55:51 · 26199 阅读 · 0 评论