MacApp自动化测试之Automator初体验

今天我们继续讲Automator的使用。

初体验

启动Automator程序,选择【工作流程】类型。从资源库区域依次将获取指定的URL、从网页中获得文本、新建文本文件三个操作拖进工作流创建区域。

然后修改内容,将获取指定的URL操作中的URL替换成https://www.cnblogs.com/tynam;将从网页中获得文本操作下内容修改为获得纯文本来自网页;将新建文本文件操作中【文件格式】修改成纯文本(txt,需要时可转换),存储为修改成test.txt,位置设置成桌面并勾选后面的替换现有文件。

此条工作流的含义是访问网页https://www.cnblogs.com/tynam,然后提取该网页的所有文本内容,并将提取的文本内容保存到桌面test.txt文件中。

然后点击运行按钮执行工作流中的操作,运行后截图如8-3所示。

图8-3 Automator初体验截图

从输出的日志可以看到,工作流程中的三个步骤全部执行完成。桌面也生成了一个test.txt文件,文件内容截图如8-4所示。

图8-4 test.txt文件内容截图

最后将该工作流保存,下次打开后可继续编辑使用。

八大文稿类型

启动Automator程序后,第一步操作就是选择文稿类型,文稿类型一共有工作流程、应用程序、快速制作、打印插件、文件夹操作、日历提醒、图像捕捉插件、听写命令八种类型。每一种文稿类型代表着一种程序格式,不同的格式应用方式也不相同。

PART 1

工作流程

在Automator应用程序内运行的工作流程,该类型文稿运行时只能在Automator中运行。8.3.2初体验一节中使用的就是工作流程类型的文稿。

例如将8.3.2初体验一节中创建的工作流程保存为"获取网页文本.workflow", 工作流程类型的文稿后缀为workflow,保存的文稿截图如图8-5所示。

图8-5 获取网页文本.workflow截图

双击打开获取网页文本.workflow文稿,进入的是Automator编辑界面。

PART 2

应用程序

直接点击或者将文件/文件夹拖放到上面便可开始运行的单独工作流程。应用程序类型文稿非常适用,是一个独立的工作流,也可以认为是一个独立的应用程序,直接点击保存的文稿即可运行。

示例:将PDF转换成图片。启动Automator程序并新建一个应用程序类型的文稿,然后依次执行如下操作:

1.工作流中添加一个请求确认操作,在第一个输入框中输入内容"请选择一个PDF文件"。请求确认操作会弹出一个提示窗口,旨在提示用户某些内容。

2.工作流中添加一个请求访达项目操作,【开始于】设置为选择PDF文件使用频率最高的一个路径,例如选择test目录,其它内容保持默认。请求访达项目操作会打开一个窗口,用户在窗口内可选择文件。

3.工作流中添加一个将PDF页面渲染成图像操作,内容均保持默认即可。将PDF页面渲染成图像操作会将PDF文件按照页渲染成图片,每页一个图片。

4.工作流中添加一个移动访达项目操作,【至】设置为生成的图片保存路径,例如选择test目录,其它内容保持默认。移动访达项目操作是将生成的文件移动到制定的路径下。

5.工作流中添加一个显示访达项目操作。显示访达项目操作用于直接进入文件生成的目录,显示生成的文件。

操作添加完成后,工作流截图如图8-6所示。

图8-6 PDF转图片工作流

完成操作添加后,在Automator程序中先试运行,如果日志显示全部通过则将该工作流保存成"PDF转图像.app"。

6.双击PDF转图像.app运行工作流,首先弹出了【请选择一个PDF文件】提示框;点击【好】按钮后打开了选择文件窗口,选择"test.pdf"文件;接着在test目录下生成了许多JPEG图片。如图8-7所示。

图8-7 PDF转图像

PART 3

快速操作

快速操作是可添加到访达、触控栏和"服务"菜单的工作流程。可以在"系统偏好设置"中管理快速操作。

示例:将图片格式转换为JPEG。启动Automator程序并新建一个快速操作类型的文稿,然后依次执行如下操作:

1.快速操作类型文稿新建后会有一个默认输入文件步骤。如果没有输入内容则可设置【工作流程收到当前】为没有输入。

【工作流程收到当前】用作工作流程输入的数据类型,由于本次是对图像的转换,因此选择图像文件;【位于】设置为访达。其它内容保持默认。

2.工作流中添加一个拷贝访达项目操作。该操作有两种添加方式,第一种是手动添加,第二种是在添加更改图像类型操作时会提示"您要增加一个"拷贝访达项目"操作以便更改副本且保留原文件吗?",点击【添加】按钮也可实现添加。该操作在改变后修改图片类型后会保留原文件。【至】修改为test目录。

3.工作流中添加一个更改图像类型操作。【至类型】修改为JPEG。

操作添加完成后,工作流截图如图8-8所示。

图8-8 图片转JPEG类型工作流

完成操作添加后将该工作流保存成"图像格式转换为JPEG.workflow"。默认保存在 /Users/[用户名]/Library/Services/目录下。

4.依次进入【系统偏好设置】>>【键盘】>>【快捷键】>>【服务】,在图片分类下找到图像格式转换为JPEG,并设置快捷键。例如设置为Ctrl+Shift+J。如图8-9所示。

图8-9 图片转JPEG类型设置快捷键

5.选中一个图片,然后在键盘按下Ctrl+Shift+J。会在拷贝访达项目操作中设置的【至】路径下(步骤2中的设置)生成一个xxxx_副本.jpg文件。例如选中test目录下的adb工作原理.png图片,然后按下Ctrl+Shift+J,在test目录下生成了一个adb工作原理_副本.png,如图8-10所示。

图8-10 转换为JPEG类型图片

PART 4

打印插件

可在"打印"对话框中使用的工作流程。此工作流在打印对话框中任何可以打印的地方启用,例如使用它将Excel文件转换为PDF。

示例:PDF加水印。启动Automator程序并新建一个打印插件类型的文稿,然后依次执行如下操作:

1.工作流中添加一个给PDF文稿添加水印操作。水印列表中添加一张图片;【层】选择在PDF之下绘制水印;【偏移】中调节x、y坐标,将水印放在一个合适的位置。最后设置【缩放】、【角度】、【不透明度】,调整水印。

2.工作流中添加一个移动访达项目操作。【至】设置为test目录。操作运行后会将添加水印的PDF文稿重新保存到test目录下。

操作添加完成后,工作流截图如图8-11所示。

图8-11 添加水印工作流

完成操作添加后将该工作流保存成"PDF添加水印.workflow", 默认保存在 /Users/[用户名]/Library/PDF Services/目录下。保存后在所有打印的地方都可使用。

6.打开一个PDF文件,依次选择【文件】>>【打印】。在打印设置界面的最下方下拉框中选择创建的PDF添加水印,如图8-12所示。

图8-12 选择PDF添加水印操作

7.选择PDF添加水印下拉选项后便会开始生成带有水印的PDF文稿,并保存在test目录下。打开生成的PDF,每页都添加了水印。如图8-13所示。

图8-13 带水印的PDF文稿

PART 5

文件夹操作

附加到"访达"中文件夹的工作流程。项目添加到文件夹后,工作流程便会运行并且文件会用作工作流程的输入。例如根据文件扩展名将文件划分到不同的文件类型下。

示例:对某个文件下所有文件实现重命名。启动Automator程序并新建一个文件夹操作类型的文稿,然后依次执行如下操作:

1.文件夹操作类型文稿新建后会有一个【文件夹操作接受添加到这个位置的文件和文件夹】输入框,该输入框选择需要操作的文件夹,例如笔者选择test文件夹。

2.工作流中添加一个给访达项目重新命名操作。第一个输入框设置为连续编号;【将数字添加到】设置为现有项目名称;【添加数字】设置为名称之后;【开始数字为】设置为1;【分割符为】设置为下划线;编号数字长度设置为3。在该操作下面可看到命名示例"例如:项目名称_001.xxx"。

3.工作流中添加一个移动访达项目操作。【至】选择test2目录。

操作添加完成后,工作流截图如图8-14所示。

图8-14 文件夹下项目重命名工作

完成操作添加后将该工作流保存成"文件夹下项目重命名.workflow", 默认保存在 /Users/[用户名]/Library/Workflows/Applications/Folder Actions/目录下。

4.将文件拖到test文件夹下,在test2文件夹下会对所有的文件根据命名规则重新命名。例如将草.jpeg、海滩.jpg、马路.jpeg、烟花.jpeg、鹰.jpeg拖进test文件夹下,在test2文件下生成了草_003.jpeg、海滩_004.jpg、马路_001.jpeg、烟花_005.jpeg、鹰_002.jpeg。如图9-12所示。

图8-15 文件夹下项目重命名

PART 6

日历提醒

日历日程发生时,便会运行的工作流程。简单地理解就是一个定时任务,在特定时间执行特点操作。因为创建的工作流会作为日历事件展示在日历程序中,因此可以像使用普通日历事件一样设置重复和通知。

示例:定时备份文件。启动Automator程序并新建一个日历提醒类型的文稿,然后依次执行如下操作:

1.工作流中添加一个获得指定的访达项目操作。在列表中添加一个文件夹,例如添加test文件夹。

2.工作流中添加一个获得文件夹内容操作。

3.工作流中添加一个拷贝访达项目操作。【至】设置为test2文件夹。

操作添加完成后,工作流截图如图8-16所示。

图8-16 定时备份文件工作流

图8-17 日历提示信息

完成操作添加后将该工作流保存成"定时备份文件.app", 默认保存在 /Users/[用户名]/Library/Workflows/Applications/Calendar目录下。

保存成功后日历会立即弹出一个提醒信息,如图8-17所示。

2.打开日历程序,在保存"定时备份文件.app"任务的当天,会出现一条定时备份文件的任务。双击该任务可对任务进行设置,例如设置开始时间、结束时间、重复等。【重复】默认是无,在此设置为每天,设置后日历的每天都会显示定时备份文件任务。如图8-18所示。

图8-18 重复选项设置为每天

当当前时间到达设置的开始时间后,任务便会执行。test文件夹下的所有文件便会备份一份到test2文件夹下,执行结果如图8-19。

图8-18 文件备份结果

PART 7

图像捕获插件

可以在Mac的"图像捕捉"应用程序中使用的工作流程。该工作流程与苹果电脑上内置的图像捕获应用程序结合使用,当图像从相机、iPhone、iPad等导入时执行的一个操作。例如当接收图像时,对图像的大小进行调整。

示例:装裱图片。启动Automator程序并新建一个图像捕获插件类型的文稿,然后依次执行如下操作:

1.工作流中添加一个移动访达项目操作。【至】设置为test文件夹。

2.工作流中添加一个拷贝访达项目操作。【至】设置为test2文件夹。

3.工作流中添加一个装裱图像操作。调节画布尺寸宽度和高度至合适位置。

操作添加完成后,工作流截图如图8-19所示。

图8-19 装裱图片工作流

完成操作添加后将该工作流保存成"装裱图片.workflow", 默认保存在 /Users/[用户名]/Library/Workflows/Applications/Image Capture目录下。保存后在图像捕捉应用程序中就可使用。

4.打开图像捕捉程序,手机连接Mac笔记本后图像捕捉程序会自动识别设备。【导入到】下拉框选择刚刚创建的"装裱图片.workflow",接着选择需要导入的图片,最后点击【导入】或【全部导入】按钮。test2文件夹下就会出现装裱过后的图片,如图8-20所示。

图8-20 装裱图片

PART 8

听写命令

只要使用指定的听写,此工作流就会运行。通过使用辅助功能的增强听写选项,可以建立语音驱动的工作流,即在激活听写时自动将某些关键字作为触发器。

听写命令其实我们经常使用,例如说一句"Siri,播放音乐"后Mac会自动启动音乐程序并播放音乐。Automator的听写命令类型文稿就是创建一个工作流,接收语音指令,然后执行对应的操作。例如设置语音输入命令"计算机,将 Mac 置于睡眠模式",则在听写状态下接收到该语音就会将Mac置于睡眠模式。

示例:浏览器中打开必应网站。启动Automator程序并新建一个听写命令类型的文稿,然后依次执行如下操作:

1.听写命令类型文稿新建后会有一个【听写命令】输入框,用来输入接受的指令,在此输入"打开必应网站";勾选【命令已启用】复选框。

2.工作流中添加一个获得指定的URL操作。将地址列表中默认的URL修改为https://cn.bing.com/。

3.工作流中添加一个显示网页操作。

操作添加完成后,工作流截图如图8-21所示。

图8-21 打开必应网站工作流

完成操作添加后将该工作流保存成"打开必应网站.app", 默认保存在 /Users/[用户名]/Library/Speech/ Speakable Items目录下。保存后在语音功能中说出打开必应网站就实现操作。

4.进入【系统偏好设置】>>【辅助功能】>>【语音控制】,然后点击界面中的【命令...】按钮,勾选【打开必应网站】复选框(默认就是勾选状态),操作如图8-22所示。

图8-22启用"打开必应网站"指令

5.进入【系统偏好设置】>>【辅助功能】>>【语音控制】,在语音控制设置界面勾选【启用语音控制】复选框,启用语音控制后桌面会出现一个语音输入的麦克风图标。

6.语音控制功能在启用状态下,说出"打开必应网站"。当识别到"打开必应网站"指令后便会执行"打开必应网站.app"程序,在浏览器中打开必应首页,打开后如图8-23所示。

图8-23 指令识别后执行结果

行动吧,在路上总比一直观望的要好,未来的你肯定会感 谢现在拼搏的自己!如果想学习提升找不到资料,没人答疑解惑时,请及时加入扣群: 320231853,里面有各种软件测试+开发资料和技术可以一起交流学习哦。

最后感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:

这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你!

相关推荐
YuShiYue12 分钟前
pnpm monoreop 打包时 node_modules 内部包 typescript 不能推导出类型报错
javascript·vue.js·typescript·pnpm
24k小善15 分钟前
Flink TaskManager详解
java·大数据·flink·云计算
想不明白的过度思考者21 分钟前
Java从入门到“放弃”(精通)之旅——JavaSE终篇(异常)
java·开发语言
天天扭码28 分钟前
总所周知,JavaScript中有很多函数定义方式,如何“因地制宜”?(ˉ﹃ˉ)
前端·javascript·面试
一个专注写代码的程序媛32 分钟前
为什么vue的key值,不用index?
前端·javascript·vue.js
장숙혜44 分钟前
ElementUi的Dropdown下拉菜单的详细介绍及使用
前端·javascript·vue.js
.生产的驴1 小时前
SpringBoot 封装统一API返回格式对象 标准化开发 请求封装 统一格式处理
java·数据库·spring boot·后端·spring·eclipse·maven
火柴盒zhang1 小时前
websheet之 编辑器
开发语言·前端·javascript·编辑器·spreadsheet·websheet
某公司摸鱼前端1 小时前
uniapp 仿企微左边公司切换页
前端·uni-app·企业微信
WKK_1 小时前
uniapp自定义封装tabbar
前端·javascript·小程序·uni-app