背景
公司A團(tuán)隊(duì)執(zhí)行測(cè)試時(shí)需要填寫多到10來個(gè)的表單頁(yè)面,如果每個(gè)表單都靠人工一個(gè)一個(gè)去輸入那勢(shì)必會(huì)非常的繁瑣,帶來非常多的工作量,所以急需一個(gè)能自動(dòng)填寫表單的功能。
Autofill 介紹
Autofill 正是一個(gè)只需要前期簡(jiǎn)單配置,便可以輔助填寫表單的Chrome 瀏覽器插件。
Autofill 簡(jiǎn)單原理介紹
Autofill 其實(shí)是通過用戶在配置界面配置的網(wǎng)址,控件定位方式,控件類型,控件操作內(nèi)容從而通過這些信息去執(zhí)行JS腳本以達(dá)到自動(dòng)填充表單的目的。
安裝
既然是Chrome的一個(gè)插件,那么只需要進(jìn)入到Chrome網(wǎng)上應(yīng)用商店搜索“Autofill”便可以找到,當(dāng)前最新版是v7.1,這里直接給地址:https://chrome.google.com/webstore/detail/autofill/nlmmgnhgdeffjkdckmikfpnddkbbfkkk?utm_source=chrome-app-launcher-info-dialog
注意:國(guó)內(nèi)需要Chrome 插件安裝需要翻墻

點(diǎn)擊【添加至CHROME】等待安裝完成便可。

界面介紹
安裝完Autofill 后,會(huì)在Chrome瀏覽器右上角出現(xiàn)一個(gè)閃電圖標(biāo),右鍵圖標(biāo)點(diǎn)擊選項(xiàng)打開Aufofill 配置界面:

Autofill配置界面相對(duì)還是比較簡(jiǎn)潔,分為四大塊:
- Form Fields(表單字段):最主要的配置界面,用于配置自動(dòng)填表單的信息。
- Expressions(例外):用于設(shè)置你不想自動(dòng)填寫表單的網(wǎng)頁(yè)地址,支持正則。
- Other Stuff(其它標(biāo)簽):這里有一些高級(jí)設(shè)置,主要用于設(shè)置自動(dòng)填表單規(guī)則和導(dǎo)入導(dǎo)出。
- Support(支持):這個(gè)主要是幫助文檔,還有一些快捷鍵列表。

快速上手
Autofill 提供了非常方便的錄制功能,可以快速生成配置文件。
錄制
假設(shè)我們以Autofill提供的【練習(xí)表單頁(yè)面】為例子:http://www.tohodo.com/autofill/form.html
1.打開頁(yè)面,在需要自動(dòng)填寫表單的控件中(支持下拉選項(xiàng)框,單選框,復(fù)選框,文本框)編輯內(nèi)容,例如下:

2.表單填寫完后右鍵:Autofill --> 為此頁(yè)面增加規(guī)則...

3.如果是第一次使用,那么在生成自動(dòng)填充規(guī)則前,我們需要新建一個(gè)配置文件。

4.創(chuàng)建完或者已經(jīng)選取了一個(gè)配置文件,最后直接點(diǎn)擊 【生成自動(dòng)填充規(guī)則】,這樣我們就根據(jù)填寫的表單生成一個(gè)配置文件,打開Autofill的設(shè)定中的表單字段可以查看到:

使用配置文件,自動(dòng)填充表單
完成配置文件后,那么我們就可以使用該配置文件來進(jìn)行自動(dòng)化填充。
進(jìn)行自動(dòng)填充工具提供了兩種模式既1.自動(dòng)模式 2.手動(dòng)模式, 默認(rèn)為手動(dòng)模式。
自動(dòng)模式
再次去刷新【練習(xí)表單頁(yè)面】,你會(huì)發(fā)現(xiàn)不管怎么刷新我們錄制過的控件,總是會(huì)按我們錄制時(shí)的情況自動(dòng)填充。
手動(dòng)模式
要使用手動(dòng)模式,需要先到Autofill設(shè)定中的其他標(biāo)簽-->高級(jí)選學(xué)校中勾選【開啟手動(dòng)模式】。

開啟手動(dòng)模式后,我們?cè)俅芜M(jìn)入到【練習(xí)表單頁(yè)面】,刷新頁(yè)面,這時(shí)頁(yè)面表單就無法自動(dòng)填充,如果想實(shí)現(xiàn)自動(dòng)填充需要鼠標(biāo)右鍵-->Autofill-->使用配置-->Test1,這時(shí)就可以完成自動(dòng)化填表單操作。

填充時(shí)是否覆蓋原來的內(nèi)容
有時(shí)我們的表單中已經(jīng)有包含了一些內(nèi)容,我們希望在自動(dòng)填充時(shí)不去修改已填充的文本框,這時(shí)我們可以打開Autofill設(shè)定找到對(duì)應(yīng)的配置文件,去掉【覆蓋非空字段】的勾選框便可。

配置文件導(dǎo)入和導(dǎo)出
Autofill 提供了配置文件的導(dǎo)入和導(dǎo)出功能,方便團(tuán)隊(duì)成員間互相分享配置。
導(dǎo)入和導(dǎo)出的入口都在其它標(biāo)簽里面。點(diǎn)擊導(dǎo)出可以把導(dǎo)出的文本copy到記事本或者保存成csv文件給伙伴。 導(dǎo)入可以把導(dǎo)出的文本copy到文本框點(diǎn)擊導(dǎo)入完成。 同時(shí)導(dǎo)出支持替換和追加,替換就是把自己原來的配置都刪除,玩玩全全使用導(dǎo)入的配置,追加則在原有的配置基礎(chǔ)上添加新導(dǎo)入的配置。

增強(qiáng)配置文件
讓同一個(gè)配置支持多個(gè)站點(diǎn)
如果A,B兩個(gè)網(wǎng)站存在相同的表單(空間定位方式也一樣),而你又不想因此建立多個(gè)配置文件,那么可以修改配置文件中的站點(diǎn),使之支持多個(gè)網(wǎng)站。 修改規(guī)則只需要添加 “|”后跟上其它站點(diǎn)地址。 例如下:

內(nèi)容變量設(shè)置
通過錄制生成的配置文件中【內(nèi)容】項(xiàng)是個(gè)固定值,然后實(shí)際使用中我們往往需要一些隨機(jī)數(shù)或者變量,例如創(chuàng)建賬號(hào)的表單,總是希望每次自動(dòng)填表單自動(dòng)生成的用戶名都是不一樣的,那么Autofill提供了4種變量設(shè)置。
** 隨機(jī)數(shù) **
隨機(jī)數(shù)生成分成純數(shù)字和數(shù)字與字符串結(jié)合兩種方式,語法如下:
1.隨機(jī)生成N位數(shù)字: {#N}
2.隨機(jī)生成N位字符串: {$N}
遞增 or 遞減
遞增:{1++}
遞減:{1000--}
隨機(jī)選取某個(gè)選項(xiàng)
從某些選項(xiàng)中隨機(jī)選取一個(gè),進(jìn)行填寫表單。 例如隨機(jī)從a,b,c,d中選取一個(gè): {a|b|c|d}
獲取規(guī)則表中的值
也許我們會(huì)有這么場(chǎng)景,我們的確認(rèn)密碼文本框的值,必須等于文本框的值,那么其實(shí)我們可以通過Autofill提供的獲取規(guī)則表中的值來解決,這里主要提供了獲取配置文件中【名稱】【內(nèi)容】的值。
例如下圖:通過{v7} 來獲取 上一個(gè)內(nèi)容的值,當(dāng)然如果想獲取名稱里面的值,只需要{n7}便可,每個(gè)【名稱】和【內(nèi)容】框的右上角都會(huì)對(duì)應(yīng)一個(gè)值,而且唯一。

個(gè)性化定制
Autofill 提供了個(gè)性化定制或者說提供了執(zhí)行JS的功能,我們可以寫一段JS 放入配置文件中,那么配置文件被執(zhí)行時(shí)會(huì)自動(dòng)執(zhí)行這段JS。
具體步驟如下圖:
- 點(diǎn)擊 + 號(hào)圖標(biāo),添加一條配置
- 類型全球JavaScript類型
- 在內(nèi)容中把調(diào)試通過的JS黏貼進(jìn)去
-
配置要執(zhí)行JS的站點(diǎn)
Paste_Image.png
執(zhí)行效果:

注意:這里只支持原生的JS 不支持Jquery等框架。
補(bǔ)充:在錄制生成或者手工編寫的配置中的【名稱】既定位方式,其匹配優(yōu)先級(jí)由高到底為:name,id,placeholder,title,class,同時(shí)可以使用正則表達(dá)式。
更多詳細(xì)幫助,可以參考Autofill在線幫助文檔:http://www.tohodo.com/autofill/help-chrome.html
