转自:https://blog.csdn.net/com542948180/article/details/78832494

背景

  公司CD Team团队执行测试时需要填写多到10来个的表单页面,如果每个表单都靠人工一个一个去输入那势必会非常的繁琐,带来非常多的工作量,而且原来的ART工具也无法在新的站点上使用,所以急需一个类似ART的工具,有自动填写表单的功能。

Autofill 介绍

  Autofill 正是一个只需要前期简单配置,便可以辅助填写表单的Chrome 浏览器插件。

Autofill 简单原理介绍

  Autofill 其实是通过用户在配置界面配置的网址,控件定位方式,控件类型,控件操作内容从而通过这些信息去执行JS脚本以达到自动填充表单的目的。

安装

  既然是Chrome的一个插件,那么只需要进入到Chrome网上应用商店搜索“Autofill”便可以找到,当前最新版是v7.1,这里直接给地址:https://chrome.google.com/webstore/detail/autofill/nlmmgnhgdeffjkdckmikfpnddkbbfkkk?utm_source=chrome-app-launcher-info-dialog
注意:国内需要Chrome 插件安装需要FQ

Paste_Image.png

点击【添加至CHROME】等待安装完成便可。

Paste_Image.png

界面介绍

  安装完Autofill 后,会在Chrome浏览器右上角出现一个闪电图标,右键图标点击选项打开Aufofill 配置界面:

Paste_Image.png

  Autofill配置界面相对还是比较简洁,分为四大块:

  1. Form Fields(表单字段):最主要的配置界面,用于配置自动填表单的信息。
  2. Expressions(例外):用于设置你不想自动填写表单的网页地址,支持正则。
  3. Other Stuff(其它标签):这里有一些高级设置,主要用于设置自动填表单规则和导入导出。
  4. Support(支持):这个主要是帮助文档,还有一些快捷键列表。

Paste_Image.png

快速上手

  Autofill 提供了非常方便的录制功能,可以快速生成配置文件。

录制

  假设我们以Autofill提供的【练习表单页面】为例子:http://www.tohodo.com/autofill/form.html
1.打开页面,在需要自动填写表单的控件中(支持下拉选项框,单选框,复选框,文本框)编辑内容,例如下:

Paste_Image.png

2.表单填写完后右键:Autofill --> 为此页面增加规则...

Paste_Image.png

3.如果是第一次使用,那么在生成自动填充规则前,我们需要新建一个配置文件。

Paste_Image.png

4.创建完或者已经选取了一个配置文件,最后直接点击 【生成自动填充规则】,这样我们就根据填写的表单生成一个配置文件,打开Autofill的设定中的表单字段可以查看到:

Paste_Image.png

使用配置文件,自动填充表单

  完成配置文件后,那么我们就可以使用该配置文件来进行自动化填充。
进行自动填充工具提供了两种模式既1.自动模式 2.手动模式, 默认为手动模式。

自动模式

  再次去刷新【练习表单页面】,你会发现不管怎么刷新我们录制过的控件,总是会按我们录制时的情况自动填充。

手动模式

  要使用手动模式,需要先到Autofill设定中的其他标签-->高级选学校中勾选【开启手动模式】。

Paste_Image.png

  开启手动模式后,我们再次进入到【练习表单页面】,刷新页面,这时页面表单就无法自动填充,如果想实现自动填充需要鼠标右键-->Autofill-->使用配置-->Test1,这时就可以完成自动化填表单操作。

Paste_Image.png

填充时是否覆盖原来的内容

  有时我们的表单中已经有包含了一些内容,我们希望在自动填充时不去修改已填充的文本框,这时我们可以打开Autofill设定找到对应的配置文件,去掉【覆盖非空字段】的勾选框便可。

Paste_Image.png

配置文件导入和导出

  Autofill 提供了配置文件的导入和导出功能,方便团队成员间互相分享配置。
  导入和导出的入口都在其它标签里面。点击导出可以把导出的文本copy到记事本或者保存成csv文件给伙伴。 导入可以把导出的文本copy到文本框点击导入完成。 同时导出支持替换和追加,替换就是把自己原来的配置都删除,玩玩全全使用导入的配置,追加则在原有的配置基础上添加新导入的配置。

Paste_Image.png

增强配置文件

让同一个配置支持多个站点

  如果A,B两个网站存在相同的表单(空间定位方式也一样),而你又不想因此建立多个配置文件,那么可以修改配置文件中的站点,使之支持多个网站。 修改规则只需要添加 “|”后跟上其它站点地址。 例如下:

Paste_Image.png

内容变量设置

  通过录制生成的配置文件中【内容】项是个固定值,然后实际使用中我们往往需要一些随机数或者变量,例如创建账号的表单,总是希望每次自动填表单自动生成的用户名都是不一样的,那么Autofill提供了4种变量设置。
随机数
随机数生成分成纯数字和数字与字符串结合两种方式,语法如下:
1.随机生成N位数字: {#N}
2.随机生成N位字符串: {$N}

递增 or 递减
递增:{1++}
递减:{1000--}

随机选取某个选项
从某些选项中随机选取一个,进行填写表单。 例如随机从a,b,c,d中选取一个: {a|b|c|d}

获取规则表中的值
也许我们会有这么场景,我们的确认密码文本框的值,必须等于文本框的值,那么其实我们可以通过Autofill提供的获取规则表中的值来解决,这里主要提供了获取配置文件中【名称】【内容】的值。
例如下图:通过{v7} 来获取 上一个内容的值,当然如果想获取名称里面的值,只需要{n7}便可,每个【名称】和【内容】框的右上角都会对应一个值,而且唯一。

Paste_Image.png

个性化定制

  Autofill 提供了个性化定制或者说提供了执行JS的功能,我们可以写一段JS 放入配置文件中,那么配置文件被执行时会自动执行这段JS。
具体步骤如下图:

  1. 点击 + 号图标,添加一条配置
  2. 类型全球JavaScript类型
  3. 在内容中把调试通过的JS黏贴进去
  4. 配置要执行JS的站点

    Paste_Image.png

执行效果:

Paste_Image.png

补充:在录制生成或者手工编写的配置中的【名称】既定位方式,其匹配优先级由高到底为:name,id,placeholder,title,class,同时可以使用正则表达式。

小结

与手工对比优势:

  1. 节约大量时间,由原来纯手工测试1个case半小时左右的执行时间缩短到只需要10分钟左右。
  2. 可以预先设置规则
  3. 避免重复操作

与ART对比优势:

  1. 支持medicare网站
  2. 通用性更强
  3. 更容易维护

不足:

  1. 缺乏快捷键选取配置文件
  2. 值支持原生JS,不支持jquery等框架

更多详细帮助,可以参考Autofill在线帮助文档:http://www.tohodo.com/autofill/help-chrome.html

转载于:https://www.cnblogs.com/wxfy/p/10823992.html

Autofill chrome 表格自动填充相关推荐

  1. chrome浏览器自动填充时背景色改变(-webkit-autofill)

    出现的问题 在做一个表单时使用chrome浏览器输入表单内容,在第二次测试的时候出现了自动填充的选项,选择后发现输入框的样式不再是手动设置的样式 原手动填充效果如下: 选择自动填充后的样式: 此时观察 ...

  2. 禁止chrome浏览器自动填充表单的解决方案

    禁止chrome浏览器自动填充表单的解决方案 参考文章: (1)禁止chrome浏览器自动填充表单的解决方案 (2)https://www.cnblogs.com/ld-swust/p/5801606 ...

  3. Chrome无法自动填充用户名和密码

    Chrome无法自动填充用户名和密码 一般地,Chrome会在页面加载时即会自动填充用户保存的用户名和密码,但是有的时候只能通过用户通过下拉列表明确选择某一账户时才会自动填充. 解决方法是在chrom ...

  4. chrome防止自动填充密码

    chrome防止自动填充密码 chrome浏览器保存密码之后,页面上有password存在的时候会出现自动填充用户名和密码的情况. 添加一个input[type=password] 设置display ...

  5. cdr 表格自动填充文字_操作基础知识Word文字编辑

    Office操作基础知识Word文字编辑 1.相应文件扩展名: Word文件扩展名.doc:Powerpoin文件扩展名.ppt:Frontpage文件扩展名.htm:Excel文件扩展名.xls:F ...

  6. Chrome谷歌浏览器自动填充账号密码样式

    在Chrome自动填充默认样式 Chrome自动填充账号和密码之后,他输入框会有一个他自带的样式,黄色的或者白色的: 技术栈Vue +element组件库. .el-input__inner {hei ...

  7. chrome浏览器自动填充背景色-webkit-autofill

    输入框在chrome浏览器下显示白色背景,主要针对type为password的input,即使添加了非白色背景,仍然没用,看控制面板会有自动填充:input:-webkit-autofill的 bac ...

  8. Chrome浏览器自动填充的表单如何去掉淡黄色背景???

    1.原因:表单自动填充元素在chrome下会有一个默认样式 (如下),并且优先级最高,无法覆盖(!important也无法覆盖). input:-webkit-autofill { backgroun ...

  9. 取消chrome浏览器自动填充密码功能-autocomplete

    在前端页面进行登录时,需要填写密码,那么为了保证密码不被看到,我们首选的input表单的type类型必然时password. 例如 <input type="password" ...

最新文章

  1. 深度神经网络对脑电信号运动想象动作的在线解码
  2. php值传递和java_Java的值传递和引用传递
  3. AVL树---平衡的二叉查找树
  4. .NET 深度指南:Colors
  5. linux终端如何打开文件夹,如何从终端打开文件夹(带GUI)?
  6. 20万DBA都在关注的12个问题
  7. java 参数 python_java可变参数
  8. manual 离线手册 韩顺平php_PHP - Manual: 手册的格式 (官方文档)
  9. 搭建Hadoop集群(二)
  10. pre-commit钩子,代码质量检查
  11. JavaScript实用手册
  12. 计算机文化基础的重点,计算机文化基础重点知识(1)
  13. java浏览 下单界面_Javaweb网上商城项目实战(24)实现订单详情查询功能
  14. python循环结构语句实现_Python的循环结构
  15. 大学寒假这样过,过完惊艳所有人,不只是你的宿友,还有千千万万个程序员同行们!!!
  16. 一个年化收益30%的指数
  17. [阅读体会] UNIX环境高级编程
  18. 借助Bilibili Evolved和aria2批量下载b站视频
  19. mysql update 负数_解决并发情况下库存减为负数问题--update2016.04.24
  20. 列表推导式-list comprehension

热门文章

  1. mysql数据库安装最详解
  2. 发表论文怎样确定刊物的级别
  3. python--data.dropna
  4. 【Python 每日一技】根据任意分隔符分割字符串
  5. 【图像分类损失】PolyLoss:一个优于 Cross-entropy loss和Focal loss的分类损失
  6. Unity3D中文视频教程【超清+精选】
  7. ubuntu时间自动同步服务器,Ubuntu从NTP服务器同步时间
  8. java连接SQL Server 2005数据库教程(手把手教程)
  9. QEMU 模拟启动 openEuler 的树莓派镜像
  10. win10下QT5.11.1静态编译(带MYSQL)