DekAuto4J V1.1 代码说明


一、DekAuto4J 简介

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

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


二、DekAuto4J 代码说明文档

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


Class Name:ControlEventUtils

Method Name

Params

Description

Explain

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 rectangleString picPath]

区域桌面图像识别点击事件

Type:鼠标操作的种类,picPath:待识别图像所在路径,rectangle:屏幕的指定某块区域

mouseEvent

[int type,long timeString picPath]

全屏异步等待图像识别点击事件

Type:鼠标操作的种类,time:异步等待的时间,picPath:待识别图像所在路径

inputText

[String text]

输入字符

输入字符,text:需要输入的字符




Class Name:OpenCvUtils

Method Name

Parameters

Description

Explain

intiOpenCvDll

[String dllPath]

初始化OpenCvDll

初始化本地OpenCvDll,填入本地的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 Name

Parameters

Description

Explain

getStrFromPic

[String filePath, String ocrPath, String ocrType]

简单的图片->文字识别

filePath:图片的路径,ocrPath:本地OCR库的路径

ocrType:默认是chi+eng语言库

返回:String




Class Name:ScreenUtils

Method Name

Parameters

Description

Explain

getScreen

[String name]

截取全屏

截取全屏幕,name:保存到本地的名称

getScreen

[String nameRectangle rectangle]

根据区域截取全屏

截取根据rectangle的值,截取屏幕中指定范围的图片,保存为name名称

getScreenByPrintScreen

[String name]

截取全屏

电脑自带方式截取全屏,name:保存到本地的名称




Class Name:MouseEvent

MouseType (static)

Value

Explain

TYPE_MOVE

0

鼠标平移事件,不点击

TYPE_DRAGMOVE

1

鼠标拖拽事件

TYPE_LEFT_CLICK

2

鼠标左键点击一次

TYPE_RIGHT_CLICK

4

鼠标右键点击一次

TYPE_MID_CLICK

8

鼠标中键点击一次

TYPE_LEFT_DOUBLECLICK

16

鼠标左键双击一次

TYPE_PIC_CLICK

128

图像识别点击事件

TYPE_MOUSE_WHEEL

256

鼠标滚轮事件

TYPE_LEFT_LONGCLICK

512

鼠标左键长摁事件

TYPE_AREA_PIC_CLICK

1024

区域图像识别点击事件

TYPE_PIC_WAIT_CLICK

2048

异步等待图像识别点击事件



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 Name

Parameters

Description

Explain

getSuperPatrick

[String dllPath]

初始化SuperPatrick

根据本地dll路径,初始化SuperPatrick




Class Name:ISuperPatrick

Method Name

Parameters

Description

Explain

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]

窗口图片识别点击

strClassstrTitle:窗口的定位信息

strPartImage:图片的路径,找到图片并点击一次

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

By:JT