最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

軟件測(cè)試中如何測(cè)試算法?

2022-07-29 16:40 作者:黑馬測(cè)試  | 我要投稿


PS:本文轉(zhuǎn)載自黑馬測(cè)試高贊知乎文章

鏈接:https://www.zhihu.com/question/21491058/answer/2581683257



廣義的算法是指解決問題的方案,小到求解數(shù)學(xué)題,大到制定商業(yè)策略,都可以叫做算法。而我們今天討論的軟件測(cè)試中的算法,對(duì)應(yīng)的英文單詞為 Algorithm,專指計(jì)算機(jī)處理復(fù)雜問題的程序或指令。

隨著最近幾年人工智能等領(lǐng)域的快速發(fā)展,算法受到前所未有的重視,算法測(cè)試也隨之興起。

為了讓同學(xué)們能對(duì)算法測(cè)試有一定了解,老規(guī)矩,我將這篇文章大綱先公布如下:

1、算法測(cè)試測(cè)什么?
2、算法測(cè)試如何做?
3、補(bǔ)充算法測(cè)試一個(gè)案例
4、答疑解惑

一、算法測(cè)試測(cè)什么?

先來看幾個(gè)大家耳熟能詳?shù)乃惴☉?yīng)用成功的例子:

  1. 阿爾法圍棋機(jī)器人,打敗了人類棋手,其實(shí)就是運(yùn)用了復(fù)雜的人工智能算法

  2. 今日頭條、抖音等APP ,使用了興趣算法推薦,推送的都是你感興趣的

  3. 購物軟件,你搜過什么商品,就會(huì)不勝其煩一直推薦,也是使用了算法推薦機(jī)制

區(qū)別于一般的功能測(cè)試,算法測(cè)試的側(cè)重點(diǎn)不同。

一般的功能測(cè)試是關(guān)注前端操作之后服務(wù)端返回?cái)?shù)據(jù)的正確性(增刪改查),而算法測(cè)試則要關(guān)注的是算法(模型)啟用之后,數(shù)據(jù)的增量(有正負(fù))是否符合預(yù)期。


舉兩個(gè)例子 ?

例子1: 某軟件中的廣告推薦更新了一套算法,預(yù)期要把推薦轉(zhuǎn)化率提升幾個(gè)百分點(diǎn)。

【測(cè)試要關(guān)注的是】新算法有沒有提升轉(zhuǎn)化率百分比,提升量的有沒有達(dá)到預(yù)期。

例子2: 某人臉識(shí)別軟件更新了識(shí)別算法,預(yù)期是減少識(shí)別耗時(shí)。

【測(cè)試要關(guān)注的是】耗時(shí)減少的同時(shí)準(zhǔn)確率有沒有下降。

二、如何測(cè)試算法?

1、普通功能測(cè)試會(huì)使用到的方法

1)算法穩(wěn)定性測(cè)試

a ) 長時(shí)間運(yùn)行,算法是否奔潰

b )數(shù)據(jù)量提升后,算法模型的結(jié)果是否符合預(yù)期

2 ) 算法性能測(cè)試

a )算法模型的響應(yīng)時(shí)間

b )算法模型對(duì)處理器cpu和磁盤的消耗

3 ) 算法兼容性測(cè)試

a ) 設(shè)置不同閾值內(nèi)的數(shù)據(jù),算法結(jié)果是否穩(wěn)定(比如用戶年齡、區(qū)域、性別等)

上面說到測(cè)試方法,是不是似曾相識(shí)?沒錯(cuò),這幾個(gè)與普通功能測(cè)試中用到的測(cè)試方法基本一樣


2、普通功能測(cè)試中不會(huì)用到的測(cè)試方法

1 ) 算法pk(賽馬)

對(duì)于一個(gè)需求,不同的人或團(tuán)隊(duì)可以設(shè)計(jì)出不同的算法模型,到底哪個(gè)更靠譜,是騾子是馬拉出來溜溜,pk一下就知道了。

這個(gè)環(huán)節(jié)是算法測(cè)試的關(guān)鍵部分,用例設(shè)計(jì)主要采用場(chǎng)景法,通過列舉不同場(chǎng)景,對(duì)多個(gè)算法分別進(jìn)行測(cè)試驗(yàn)證,最終綜合所有場(chǎng)景中的算法模型的表現(xiàn),選出前幾名。

你可能會(huì)有疑問:為什么要前幾名,選第一名不就可以了嗎?

下文中通過實(shí)例列舉了這個(gè)環(huán)節(jié)中的測(cè)試用例,可以更好地理解這樣設(shè)計(jì)用例的原因 ( 在此暫時(shí)不表 )。

2)A/B測(cè)試

由于算法的準(zhǔn)確性會(huì)受到測(cè)試數(shù)據(jù)的影響,而在測(cè)試環(huán)境中,數(shù)據(jù)的來源一般是手動(dòng)插入數(shù)據(jù)庫或從線上導(dǎo)入數(shù)據(jù)。

盡管測(cè)試數(shù)據(jù)會(huì)接近于真實(shí)數(shù)據(jù),但仍會(huì)有數(shù)據(jù)類型覆蓋不夠全面、數(shù)據(jù)量不夠大等方面的問題。因此,即使算法模型在測(cè)試環(huán)境通過驗(yàn)收,仍然不能在生產(chǎn)環(huán)境全部放量。

通常采用的方法是:拿出線上流量的5%-10%,其中一部分?jǐn)?shù)據(jù)作為對(duì)照組,其它部分作為一個(gè)或多個(gè)實(shí)驗(yàn)組(實(shí)驗(yàn)組采用的算法為pk中勝出的前幾名算法)。對(duì)照組合實(shí)驗(yàn)組數(shù)據(jù)分別打不同的標(biāo),一段時(shí)間后分別統(tǒng)計(jì)計(jì)算的各項(xiàng)指對(duì)照組合實(shí)驗(yàn)組的各項(xiàng)指標(biāo)標(biāo),根據(jù)關(guān)鍵指標(biāo)來驗(yàn)證算法是否有效。

實(shí)際測(cè)試中,對(duì)算法的選擇往往不是通過一項(xiàng)指標(biāo)來定的,通常是多項(xiàng)指標(biāo)綜合比較。

看到這里,你是不是還有點(diǎn)迷糊,別擔(dān)心,我們也通過下面的例子來說明。

三、算法測(cè)試實(shí)例

某導(dǎo)航APP,要升級(jí)導(dǎo)航路線推薦算法,預(yù)期是找到耗時(shí)更少的路線并推薦給用戶。

首先來理解一下需求中的關(guān)鍵詞 「耗時(shí)更少」:耗時(shí)不等同于距離,有可能距離短但是堵車,實(shí)際比繞路耗時(shí)還長。

經(jīng)過n天的研發(fā),算法同學(xué)最終給出了3個(gè)優(yōu)化后的算法模型,現(xiàn)在到了測(cè)試驗(yàn)證環(huán)節(jié)。

為方便描述,我把舊導(dǎo)航路線推薦算法稱為算法0,新算法分別稱算法1、算法2、算法3

1、算法pk(下面是場(chǎng)景化測(cè)試用例的列舉)

同一條路線,默認(rèn)為當(dāng)前時(shí)間和天氣狀況,多輪測(cè)試之后,選出最優(yōu)的算法,假定是算法2

同一條路線,分別設(shè)定不同時(shí)間段(早晚高峰、工作日、節(jié)假日等),找出最優(yōu)算法,假定是算法1

同一條路線,分別設(shè)定不同的天氣狀況(雨、雪、雷、沙塵、冰雹等),找出最優(yōu)算法,假定是算法3

還有其它很多場(chǎng)景的測(cè)試,這里就不一一列舉了……

2、穩(wěn)定性測(cè)試

長時(shí)間(24小時(shí)以上)運(yùn)行算法模型,是否有穩(wěn)定的表現(xiàn),假定這里的最優(yōu)算法是算法1

超長距離(1000km以上)測(cè)試算法模型,對(duì)比推薦效果是否穩(wěn)定,假定這里的最優(yōu)算法是算法2

……

3、兼容性測(cè)試

選取不同城市的道路測(cè)試(比如重慶、貴州等地),測(cè)試山路、爬坡、轉(zhuǎn)彎等不同路況下導(dǎo)航推薦算法的表現(xiàn),假定這里的最優(yōu)算法是算法1

選取不同通行能力的道路(城市和鄉(xiāng)間小路等),測(cè)試小路、窄路等不同路況下,推薦算法是否有穩(wěn)定表現(xiàn),假定這里的最優(yōu)算法是算法3

……

4、性能測(cè)試

同一條路線下,不同算法模型的耗時(shí),假定耗時(shí)最少的算法是算法3

同一條路線下,不同算法模型對(duì)服務(wù)器的壓力,假定最終結(jié)果是算法2最服務(wù)器壓力最小

……

5、AB測(cè)試

經(jīng)過上面幾個(gè)環(huán)節(jié)的測(cè)試,綜合所有結(jié)果,假定最終選出的算法1和算法3

線上灰度放量,選取目標(biāo)用戶,被選中的用戶會(huì)收到「是否參加內(nèi)測(cè)/灰度」之類的消息

經(jīng)過一段時(shí)間的A/B測(cè)試之后,拿到真實(shí)的數(shù)據(jù),最終經(jīng)過架構(gòu)師、研發(fā)經(jīng)理、產(chǎn)品經(jīng)理等研討之后選出符合預(yù)期的算法

四、答疑解惑

上述例子中,假定最終要采用的是算法2,但是你可能會(huì)有很多疑問:

1、算法1在早晚高峰期時(shí)段表現(xiàn)最好,我就是上下班使用導(dǎo)航軟件,為什么不采用?
2、耗時(shí)最少的是算法3。我就希望推薦路線要快,為什么不采用?

算法的測(cè)試,要經(jīng)過多個(gè)環(huán)節(jié)綜合來評(píng)估效果,所以即使某個(gè)環(huán)節(jié)表現(xiàn)好最終也不一定入選。

最終會(huì)結(jié)合效果、成本、穩(wěn)定性等多方面的因素,最終往往會(huì)選擇妥協(xié)折中后的方案。



若你是對(duì)測(cè)試不太了解的測(cè)試小萌新,有太多太多對(duì)測(cè)試的疑惑(前途、薪資、技術(shù)含量、男生是否可以干.....),強(qiáng)烈推薦你觀看《測(cè)試小白必看:學(xué)習(xí)軟件測(cè)試必問的100個(gè)問題,從此貼開始》,相信能掃除掉你心目中90%以上的常見問題。


《100個(gè)常見問題鏈接》:http://bbs.itheima.com/thread-507947-1-1.html



最后,為方便大家自學(xué)軟件測(cè)試,特意給大家準(zhǔn)備了一份13G的超實(shí)用干貨學(xué)習(xí)資源,涉及的內(nèi)容非常全面。


包括軟件學(xué)習(xí)路線圖,黑馬50多天的上課視頻、16個(gè)突擊實(shí)戰(zhàn)項(xiàng)目,80余個(gè)軟件測(cè)試用軟件,37份測(cè)試文檔,70個(gè)軟件測(cè)試相關(guān)問題,40篇測(cè)試經(jīng)驗(yàn)級(jí)文章,上千份測(cè)試真題分享,還有2020軟件測(cè)試面試寶典,還有軟件測(cè)試求職的各類精選簡(jiǎn)歷,希望對(duì)大家有所幫助…..?


《2022黑馬測(cè)試學(xué)習(xí)路線圖鏈接》:http://bbs.itheima.com/thread-405757-1-1.html



軟件測(cè)試中如何測(cè)試算法?的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國家法律
武乡县| 布拖县| 遂川县| 醴陵市| 浠水县| 平和县| 尉犁县| 雅安市| 呼图壁县| 夏邑县| 科技| 大同县| 武强县| 郴州市| 永丰县| 马边| 若羌县| 永州市| 法库县| 南投市| 阳原县| 习水县| 缙云县| 临夏市| 江城| 西畴县| 黄山市| 定南县| 财经| 夏津县| 阳曲县| 驻马店市| 南川市| 灌云县| 静宁县| 京山县| 尤溪县| 襄城县| 屯门区| 瑞丽市| 肃北|