JiaHe

相遇即是缘

DekAuto4j 说明文档

一、DekAuto4J 简介

DekAuto4J是一个以辅助Web、桌面自动化的一个工具,目的是为了达到当自动化过程中的操作,普通方式难以解决的时候使用该工具来进行辅助自动化的一个目的;

当前已开源,开源网址:https://github.com/jiutianD/DekAuto4J

二、DekAuto4J 代码说明文档

当前针对工具中主要的类以及其中的方法进行一个归类说明,后续的更新以及使用说明会陆续更新;

Class Name:ControlEventUtils

Method NameParamsDescriptionExplain
shortcutCommand[int key]摁键控制-单键例如需要切换大小写这种独立摁键
shortcutCommand[int key1, int key2]摁键控制-双键例如Ctrl+C,V等二键快捷键
shortcutCommand[int key1, int key2,int key3]摁键控制-三键例如Ctrl+Alt+A等三键快捷键
shortcutCommand[int key1, int key2, int key3, int key4]摁键控制-四键例如Ctrl+Shift+Alt+F等四键快捷键
mouseMove[[int x, int y]鼠标移动事件鼠标移动到[x,y]坐标
mouseEvent[int type, int x, int y]鼠标任意坐标点击事件Type:鼠标操作的种类,[x,y]为该操作所在的坐标
mouseEvent[int type, String picPath]全屏图像识别点击事件Type:鼠标操作的种类,picPath:待识别图像所在路径
mouseEvent[int type, int x, int y,long time]鼠标任意坐标长摁事件Type:鼠标操作的种类,[x,y]为该操作所在的坐标,time为长摁时间
mouseEvent[int type, Rectangle rectangle,String picPath]区域桌面图像识别点击事件Type:鼠标操作的种类,picPath:待识别图像所在路径,rectangle:屏幕的指定某块区域
mouseEvent[int type,long time,String picPath]全屏异步等待图像识别点击事件Type:鼠标操作的种类,time:异步等待的时间,picPath:待识别图像所在路径
inputText[String text]输入字符输入字符,text:需要输入的字符

Class Name:OpenCvUtils

Method NameParametersDescriptionExplain
intiOpenCvDll[String dllPath]初始化OpenCvDll初始化本地OpenCv的Dll,填入本地的dll路径
findPicInBigPic[StringsPicPath,String bPicPath]OpenCv矩形图片模板匹配方法传入小图,大图的路径,根据小图,在大图中查找小图,并计算出小图中心所在屏幕的坐标并返回
cutPicByRect[String picPath, Rect rect, String outPutName]图片裁剪方法根据picPath传入的图片以及设置的Rect范围,来裁剪出指定大小的图片,并保存为新的名称outPutName的图片
picHandle(String picPath, int handleType, String picName)图片处理方法PicPath:传入图片的路径,handleType:图片处理的方式,当前有灰度处理、二进制处理;picName:新的图片的名称
findSmallInLarger[StringsPicPath,String bPicPath]OpenCv图像识别点击返回坐标传入小图,大图的路径,根据小图,在大图中查找小图,会在工程根目录生成res.png的图片

Class Name:OcrUtils

Method NameParametersDescriptionExplain
getStrFromPic[String filePath, String ocrPath, String ocrType]简单的图片->文字识别filePath:图片的路径,ocrPath:本地OCR库的路径ocrType:默认是chi+eng语言库返回:String

Class Name:ScreenUtils

Method NameParametersDescriptionExplain
getScreen[String name]截取全屏截取全屏幕,name:保存到本地的名称
getScreen[String name,Rectangle rectangle]根据区域截取全屏截取根据rectangle的值,截取屏幕中指定范围的图片,保存为name名称
getScreenByPrintScreen[String name]截取全屏电脑自带方式截取全屏,name:保存到本地的名称

Class Name:MouseEvent

MouseType (static)ValueExplain
TYPE_MOVE0鼠标平移事件,不点击
TYPE_DRAGMOVE1鼠标拖拽事件
TYPE_LEFT_CLICK2鼠标左键点击一次
TYPE_RIGHT_CLICK4鼠标右键点击一次
TYPE_MID_CLICK8鼠标中键点击一次
TYPE_LEFT_DOUBLECLICK16鼠标左键双击一次
TYPE_PIC_CLICK128图像识别点击事件
TYPE_MOUSE_WHEEL256鼠标滚轮事件
TYPE_LEFT_LONGCLICK512鼠标左键长摁事件
TYPE_AREA_PIC_CLICK1024区域图像识别点击事件
TYPE_PIC_WAIT_CLICK2048异步等待图像识别点击事件

Class Name:ShortCutEvent

ShortCutType (static)Explain
WINDOWS键盘“window”键位
CTRL键盘“ctrl”键位
SHIFT键盘“shift”键位
ALT键盘“alt”键位
PRINTSCREEN键盘“printscreen”键位
ENTER键盘“enter”键位
BACK_SPACE键盘“空格”键位
CAPS_LOCK键盘“caps locks”键位
TAB键盘“tab”键位
A~Z键盘A~Z键位

当前框工具中也集成了SuperXi的SuperPatrick的方法,直接导入即可直接调用,SuperPatrick的相关说明见:http://www.autotestops.com/index/about/id/33.html

Class Name:SuperPatrick

Method NameParametersDescriptionExplain
getSuperPatrick[String dllPath]初始化SuperPatrick根据本地dll路径,初始化SuperPatrick

Class Name:ISuperPatrick

Method NameParametersDescriptionExplain
findElement[String pStrId, String pStrName, String pStrClassName, String controlType]控件鼠标坐标点击根据桌面控件的四要素来查找控件,并左键点击一次
sendKeys[String pKeysString]输入字符pKeysString:为即将要输入的字符
sendShortCutKeys[String pKeysString]快捷键方法pKeysString:为输入的快捷键组合
findImage[String strPartImage]图像识别点击strPartImage:图片的路径,找到图片并点击一次
findStaticImage[String strPartImage, int a, int b, int c, int d]静态图片识别点击strPartImage:图片的路径,abcd则为:图片的左上坐标以及右下坐标
findImageByHwnd[String strClass, String strTitle, String strPartImage]窗口图片识别点击strClass,strTitle:窗口的定位信息strPartImage:图片的路径,找到图片并点击一次

后续DekAuto4J相关方法更新都会同步在这篇说明里进行表格添加,方便查阅;