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,里面有各种软件测试+开发资料和技术可以一起交流学习哦。

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

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

相关推荐
还是大剑师兰特几秒前
什么是尾调用,使用尾调用有什么好处?
javascript·大剑师·尾调用
m0_748236119 分钟前
Calcite Web 项目常见问题解决方案
开发语言·前端·rust
ProtonBase20 分钟前
如何从 0 到 1 ,打造全新一代分布式数据架构
java·网络·数据库·数据仓库·分布式·云原生·架构
Watermelo61721 分钟前
详解js柯里化原理及用法,探究柯里化在Redux Selector 的场景模拟、构建复杂的数据流管道、优化深度嵌套函数中的精妙应用
开发语言·前端·javascript·算法·数据挖掘·数据分析·ecmascript
m0_7482489423 分钟前
HTML5系列(11)-- Web 无障碍开发指南
前端·html·html5
乐之者v27 分钟前
leetCode43.字符串相乘
java·数据结构·算法
Seven 7 Chihiro33 分钟前
软件测试之非功能测试设计
功能测试
m0_7482356134 分钟前
从零开始学前端之HTML(三)
前端·html
一个处女座的程序猿O(∩_∩)O2 小时前
小型 Vue 项目,该不该用 Pinia 、Vuex呢?
前端·javascript·vue.js
suweijie7684 小时前
SpringCloudAlibaba | Sentinel从基础到进阶
java·大数据·sentinel