過去兩周,,國(guó)內(nèi)chatGPT概念股很瘋狂,,不只是百度、訊飛,,有些默默無聞且業(yè)績(jī)虧損的公司股價(jià)大漲,,有1-2個(gè)公司連續(xù)7個(gè)漲停板,,不可思議!
上周,,因?yàn)槲④汢ing發(fā)布新版,,chatGPT熱度大增。世界不斷被ChatGPT及其應(yīng)用所震驚,,每天都有很多人在他們各自的行業(yè)發(fā)布ChatGPT的應(yīng)用程序,,從營(yíng)銷、文案,、銷售,、運(yùn)營(yíng)等等,。
當(dāng)我們考慮將ChatGPT用于軟件測(cè)試時(shí),大家的意見很不一樣,。
我們并不懷疑它對(duì)軟件測(cè)試社區(qū)的好處,,同時(shí),我們也意識(shí)到盲目接受像chatGPT這樣機(jī)器人的每一個(gè)輸出,,也會(huì)相當(dāng)危險(xiǎn)。在最樂觀的情況下,,它是一個(gè)很好的啟發(fā)式工具,,雖然從本質(zhì)上看,啟發(fā)式不是基于規(guī)則的邏輯推理來輸出結(jié)果,,其結(jié)果是不可靠的,。由于ChatGPT的輸出嚴(yán)重依賴于提示(prompts),它在很大程度上依賴于軟件測(cè)試人員給出提示的技巧,。
經(jīng)過幾天研究,,并和其他專家交流,ChatGPT在軟件測(cè)試中的應(yīng)用,,概括起來有七種不同方式。
1. 測(cè)試想法生成器
ChatGPT技術(shù)歸為AIGC(人工智能產(chǎn)生內(nèi)容),,所以我們首先想到 ChatGPT在我們的提示下,,生成我們需要的測(cè)試想法,幫助我們擴(kuò)展或優(yōu)化測(cè)試思路,、測(cè)試場(chǎng)景,、測(cè)試數(shù)據(jù)等。如果ChatGPT可以根據(jù)我們的提示給出一組初始的測(cè)試想法,,也可以檢查我們準(zhǔn)備的測(cè)試想法(如測(cè)試項(xiàng),、場(chǎng)景)清單,這不是很好嗎?是的,,它能做到,。
例如 在 與機(jī)器人chatGPT聊聊軟件測(cè)試的熱門話題 就有這樣一個(gè)例子:
這里,讓我們?cè)跈C(jī)票預(yù)訂網(wǎng)站上針對(duì) “預(yù)訂往返機(jī)票” 功能測(cè)試嘗試一下,。
在我們?cè)儐朇hatGPT之前,,有幾個(gè)簡(jiǎn)單的想法:
在From 和To 中均有效的城市
自動(dòng)完成/自動(dòng)建議
機(jī)場(chǎng)代碼和拼寫的驗(yàn)證
搜索結(jié)果的驗(yàn)證(計(jì)數(shù)、準(zhǔn)確性,、速度,、排序顯示、分頁……)
允許多種組合 (同一日期-不同日期,、旅客人數(shù)和艙位,、票價(jià)類型等)
與API匹配,,跨平臺(tái)一致性
錯(cuò)誤消息(我在輸入下一個(gè)句子后添加了這個(gè))
現(xiàn)在,讓我們向ChatGPT詢問帶有盡可能詳細(xì)提示的測(cè)試思路
?。ㄔ儐朿hatGPT如何測(cè)試這個(gè)功能)
根據(jù)輸出,,它似乎更專注于這個(gè)想法——允許多種組合 (相同的日期-不同的日期,乘客類型和數(shù)量,、艙位級(jí)別,、票價(jià)類型等組合)。
讓我們使用在線的 Pair-wise組合測(cè)試工具(https://pairwise.teremokgames.com/)來生成組合,,并排除一些選項(xiàng),,如
成人不能攜帶2名兒童旅行
成人不能攜帶2名嬰兒旅行
但由于工具的局限性,我們無法排除下列這個(gè)選項(xiàng):
成人不得攜帶一名兒童及一名嬰兒旅行
Pairwise工具的輸出總共是21個(gè)測(cè)試用例,,我們按照上面的說法排除用例#4,。
現(xiàn)在,誰做得更好? ChatGPT的輸出是測(cè)試想法的一個(gè)很好的起點(diǎn),,然后我們可以使用另一種工具進(jìn)行改進(jìn),。
我們也可以用有針對(duì)性的提示來深入研究每個(gè)測(cè)試想法,以得到更好的回答,。
例如,,當(dāng)我們要求ChatGPT為錯(cuò)誤消息生成想法時(shí),輸出結(jié)果并不令人失望,。
其中一些情況超出了當(dāng)前關(guān)注的特征變量的范圍(例如:資金不足,、無效的卡詳細(xì)信息……)
我們明白:這是一個(gè)很好的起點(diǎn),前提是我們知道如何操作,,而且必須批判性地分析輸出,,挑出有用的點(diǎn)進(jìn)行測(cè)試,拋棄沒價(jià)值的信息,。
2. 分析需求的關(guān)鍵語句
想象一下需求文檔中的一個(gè)句子,,如果ChatGPT可以分析這個(gè)句子并為我們提供短語的多種解釋,會(huì)怎樣呢?
讓我們?cè)囈幌?。我們將使用Google Meet中的示例:對(duì)于擁有Google Meet個(gè)人賬號(hào)的用戶:會(huì)議最多支持100人,。
我覺得3、4,、5表達(dá)的意思是一樣的,,但用詞不同。我會(huì)使用ChatGPT所給出的不同解釋來審視我自己的理解和解釋,。
3.創(chuàng)建學(xué)習(xí)指南
人們可以使用它來啟動(dòng)對(duì)一個(gè)主題的學(xué)習(xí)(kickstart their learning ),,并在輸出的基礎(chǔ)上進(jìn)行系統(tǒng)學(xué)習(xí)的構(gòu)建。之前,我曾給過例子:
例如,,如果我們還想了解如何測(cè)試多媒體,,我們可以向ChatGPT請(qǐng)教一些基本的方法。
然后,,我將提煉更多,,提出更深刻的問題。
有一些音頻和視頻問題
影響音頻/視頻的參數(shù)
測(cè)試音頻/視頻的工具
與音頻/視頻測(cè)試相關(guān)的術(shù)語
現(xiàn)在,,這是完美的答案嗎?我不知道,。但chatGPT給了我們足夠的指南來開始測(cè)試之旅。我現(xiàn)在可以閱讀更多關(guān)于編碼,、解碼器,、以及與多媒體的關(guān)系。
4. 生成代碼片段
它能否生成可以構(gòu)建在其上的代碼片段? 這點(diǎn)似乎沒問題,,因?yàn)槲覀冊(cè)谧悦襟w上看到了很多關(guān)于ChatGPT如何用不同編程語言生成代碼的例子。
示例: 用Python編寫代碼來讀取文件的內(nèi)容,,并列出重復(fù)元素的數(shù)量,,并根據(jù)每個(gè)元素中的字符數(shù)量按降序排序
ChatGPT達(dá)到目標(biāo)了嗎?
5. 總結(jié)一份文件或視頻
到目前為止,ChatGPT還不能創(chuàng)建圖像或觀看視頻,,但可以提供一個(gè)15分鐘的視頻的文字記錄,,例如,基于這個(gè)視頻 (Become the CEO of your testing” by B. Ajay | testing scope | TestFlix2022 | Testing tips and tricks:https://www.youtube.com/watch?v=dkWxyvhZdog )可以生成一個(gè)視頻的摘要,。
你也可以使用像YouTube Summary with ChatGPT這樣的插件來獲得摘要,。
6. 課題寫作大綱
我想了一會(huì)兒博客主題(如“軟件測(cè)試”),然后讓ChatGPT為這類文章創(chuàng)建一個(gè)寫作大綱:
其結(jié)果是一個(gè)結(jié)構(gòu)良好的大綱,,節(jié)省了大量的時(shí)間,。
ChatGPT會(huì)取代一些人的工作嗎? 沒那么快。它只是一個(gè)很好的助手,,需要有技能的人來充分發(fā)揮它的潛力,。
7. 頭腦風(fēng)暴的伴侶
想法可以隨時(shí)出現(xiàn),如果我們想就不同的軟件測(cè)試主題進(jìn)行頭腦風(fēng)暴,,獲得不同的視角,、比較或?qū)Ρ龋踔劣幸粋€(gè)助手來幫助我們進(jìn)行研究,,ChatGPT可以是一個(gè)很好的選擇,。
結(jié)論
到目前為止,通過分析ChatGPT給出的不同測(cè)試用例或回答,,我們可以得出以下結(jié)論:
ChatGPT是一個(gè)很好的起點(diǎn),,需要熟練的測(cè)試人員在交互的基礎(chǔ)上進(jìn)行構(gòu)建;
它是一種語言模型,使用適當(dāng)?shù)膶W(xué)習(xí)技術(shù),,輸出的質(zhì)量將會(huì)提高,;
把回答當(dāng)作一種啟發(fā),而不是一種規(guī)則,;
了解ChatGPT的功能并充分利用它,;
繼續(xù)使用ChatGPT進(jìn)行實(shí)驗(yàn),并選擇正確的響應(yīng)來實(shí)現(xiàn),。
敬請(qǐng)關(guān)注電子技術(shù)應(yīng)用2023年2月22日==>>商業(yè)航天研討會(huì)<<