国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

軟件測試工程師如何對算法做測試?

這篇具有很好參考價值的文章主要介紹了軟件測試工程師如何對算法做測試?。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

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

為了讓大家能對算法測試有個初步的了解,這篇文章將對“如何做算法測試”進行梳理,大綱如下:

1、算法測試測什么?
2、算法測試如何做?
3、算法測試的一個真實案例
4、答疑解惑

軟件測試工程師如何對算法做測試?,軟件測試,自動化測試工具,自動化測試,算法,軟件測試,測試工具,自動化測試

一、算法測試測什么?

先來看幾個大家耳熟能詳的算法應用成功的例子:

1、阿爾法圍棋機器人,打敗了人類棋手,其實就是運用了復雜的人工智能算法;
2、今日頭條、抖音等APP,使用了興趣算法推薦,推送的都是你感興趣的內容;
3、購物軟件,你搜過什么商品,就會不勝其煩的一直推薦,也是使用了算法推薦機制。

區(qū)別于一般的功能測試,算法測試的側重點不同。一般功能測試關注前端操作之后服務端返回數據的正確性(增刪改查),而算法測試則要關注算法(模型)啟用之后,數據的增量(有正負)是否符合預期。

舉兩個例子例子

例子1:某軟件中的廣告推薦更新了一套算法,預期要把推薦轉化率提升幾個百分點。
測試要關注的是:新算法有沒有提升轉化率百分比,提升量的有沒有達到預期。

例子2:某人臉識別Q軟件更新了識別算法,預期是減少識別耗時。
測試要關注的是:耗時減少的同時準確率有沒有下降。

二、如何測試算法?

1、普通功能測試會使用到的方法

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

長時間運行,算法是否奔潰;
數據量提升后,算法模型的結果是否符合預期;

2)算法性能測試

算法模型的響應時間;
算法模型對處理器cpu和磁盤的消耗;

3)算法兼容性測試

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

上面說到測試方法,是不是似曾相識?沒錯,這幾個與普通功能測試中用到的測試方法基本一樣。

2、普通功能測試中不會用到的測試方法

1)算法pk (賽馬)

對于一個需求,不同的人或團隊可以設計出不同的算法模型,到底哪個更靠譜,是騾子是馬拉出來溜溜,pk一下就知道了。

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

你可能會有疑問:為什么要前幾名,選第一名不就可以了嗎?下文中通過實例列舉了這個環(huán)節(jié)中的測試用例,可以更好地理解這樣設計用例的原因(在此暫時不表述)。

軟件測試工程師如何對算法做測試?,軟件測試,自動化測試工具,自動化測試,算法,軟件測試,測試工具,自動化測試

2)?A/B測試

由于算法的準確性會受到測試數據的影響,而在測試環(huán)境中,數據的來源一般是手動插入數據庫或從線上導入數據。

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

通常采用的方法是:拿出線上流量的5%-10%,其中一部分數據作為對照組,其它部分作為一個或多個實驗組(實驗組采用的算法為pk中勝出的前幾名算法)。對照組和實驗組數據分別打不同的標簽,一段時間后分別統(tǒng)計計算的各項指對照組合實驗組的各項指標,根據關鍵指標來驗證算法是否有效。

軟件測試工程師如何對算法做測試?,軟件測試,自動化測試工具,自動化測試,算法,軟件測試,測試工具,自動化測試

實際測試中,對算法的選擇往往不是通過一項指標來定的,通常是多項指標綜合比較??吹竭@里,你是不是還有點迷糊?別擔心,我們也通過下面的例子來說明。

三、算法測試實例某導航APP,要升級導航路線推薦算法,預期是找到耗時更少的路線并推薦給用戶。

首先來理解一下需求中的關鍵詞「耗時更少」:耗時不等同于距離,有可能距離短但是堵車,實際比繞路耗時還長。經過n天的研發(fā),算法同學最終給出了3個優(yōu)化后的算法模型,現在到了測試驗證環(huán)節(jié)。為方便描述,我把舊導航路線推薦算法稱為算法0,新算法分別稱算法1、算法2、算法3。

軟件測試工程師如何對算法做測試?,軟件測試,自動化測試工具,自動化測試,算法,軟件測試,測試工具,自動化測試

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

同一條路線,默認為當前時間和天氣狀況,多輪測試之后,選出最優(yōu)的算法,假定是算法2;
同一條路線,分別設定不同時間段(早晚高峰、工作日、節(jié)假日等),找出最優(yōu)算法,假定是算法1;
同一條路線,分別設定不同的天氣狀況(雨、雪、雷、沙塵、冰雹等),找出最優(yōu)算法,假定是算法3;
還有其它很多場景的測試,這里就不——列舉了…....

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

長時間(24小時以上)運行算法模型,是否有穩(wěn)定的表現,假定這里的最優(yōu)算法是算法1;
超長距離(1000km以上)測試算法模型,對比推薦效果是否穩(wěn)定,假定這里的最優(yōu)算法是算法2;
……

3、兼容性測試

選取不同城市的道路測試(比如重慶、貴州等地),測試山路、爬坡、轉彎等不同路況下導航推薦算法的表現,假定這里的最優(yōu)算法是算法1;
選取不同通行能力的道路(城市和鄉(xiāng)間小路等),測試小路、窄路等不同路況下,推薦算法是否有穩(wěn)定表現,假定這里的最優(yōu)算法是算法3;
……

4、性能測試

同一條路線下,不同算法模型的耗時,假定耗時最少的算法是算法3;
同一條路線下,不同算法模型對服務器的壓力,假定對服務器壓力最小的算法是算法2;

5、AB測試

經過上面幾個環(huán)節(jié)的測試,綜合所有結果,假定最終選出的算法1和算法2;
線上灰度放量,選取目標用戶,被選中的用戶會收到「是否參加內測/灰度」之類的消息。

經過一段時間的A/B測試之后,拿到真實的數據,最終經過架構師、研發(fā)經理、產品經理等研討之后選出符合預期的算法

四、答疑解惑

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

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

算法的測試,要經過多個環(huán)節(jié)綜合來評估效果,所以即使某個環(huán)節(jié)表現好最終也不一定入選。最終會結合效果、成本、穩(wěn)定性等多方面的因素,最終往往會選擇妥協(xié)折中后的方法。

實戰(zhàn)案例

光學理論是沒用的,要學會跟著一起敲,要動手實操,才能將自己的所學運用到實際當中去,這時候可以搞點實戰(zhàn)案例來學習。

軟件測試工程師如何對算法做測試?,軟件測試,自動化測試工具,自動化測試,算法,軟件測試,測試工具,自動化測試軟件測試工程師如何對算法做測試?,軟件測試,自動化測試工具,自動化測試,算法,軟件測試,測試工具,自動化測試

如果對你有幫助的話,點個贊收個藏,給作者一個鼓勵。也方便你下次能夠快速查找。

如有不懂還要咨詢下方小卡片,博主也希望和志同道合的測試人員一起學習進步

在適當的年齡,選擇適當的崗位,盡量去發(fā)揮好自己的優(yōu)勢。

我的自動化測試開發(fā)之路,一路走來都離不每個階段的計劃,因為自己喜歡規(guī)劃和總結,

自動化測試視頻教程、學習筆記領取傳送門?。?!
軟件測試工程師如何對算法做測試?,軟件測試,自動化測試工具,自動化測試,算法,軟件測試,測試工具,自動化測試文章來源地址http://www.zghlxwxcb.cn/news/detail-704770.html

到了這里,關于軟件測試工程師如何對算法做測試?的文章就介紹完了。如果您還想了解更多內容,請在右上角搜索TOY模板網以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網!

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如若轉載,請注明出處: 如若內容造成侵權/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經查實,立即刪除!

領支付寶紅包贊助服務器費用

相關文章

  • 2023軟件測試工程師漲薪攻略,3年如何達到30K?

    2023軟件測試工程師漲薪攻略,3年如何達到30K?

    首先漲薪并不是從8000漲到9000這種漲薪,而是從8000漲到15K加到25K的漲薪?;旧先曛畠染涂梢詫崿F。 如果我們只是普通的有應屆畢業(yè)生或者是普通本科那我們就只能從小公司開始慢慢往上走。 有些同學想去做測試,是希望能夠日后收入能夠買房買車,然后能夠讓我在大城

    2024年02月06日
    瀏覽(32)
  • 軟件測試工程師面試應對如何估算要寫多少條測試用例,耗費多長時間?

    軟件測試工程師面試應對如何估算要寫多少條測試用例,耗費多長時間?

    作為測試工程師,對測試用例的數量預估是一項基本能力,并且也很重要。因為在衡量和預報工作計劃中十分重要,例如,設計用例需要幾天,設計多少條、執(zhí)行多長時間。 首先,預估測試用例數量最重要的依據就是需求。比如下面的這個軟件設計界面和需求: 需求: 會員

    2024年02月04日
    瀏覽(24)
  • 軟件測試工程師

    軟件測試工程師

    一、什么是軟件測試? 1、定義:使用技術手段驗證軟件是否滿足使用需求 2、目的:減少軟件缺陷,保障軟件質量。 二、主流技術: 1、功能測試:驗證程序的功能是否滿足需求 2、自動化測試:使用代碼或工具代替手工,對項目進行測試 3、接口測試:有硬件接口、軟件接

    2023年04月10日
    瀏覽(33)
  • 軟件測試開發(fā)工程師常用的測試工具詳解

    軟件測試開發(fā)工程師常用的測試工具詳解

    1. 操作系統(tǒng): Linux: vmware: 用于虛擬化環(huán)境,創(chuàng)建和管理虛擬機。 xshell、xftp、ssh: 提供對Linux服務器的遠程訪問和文件傳輸。 2. 數據庫: MySQL: SQLyog、Navicat: 前端連接工具,簡化MySQL數據庫的管理和操作。 Oracle: PLSQL Developer、Navicat: 前端連接工具,用于Oracle數據庫的開發(fā)和

    2024年02月02日
    瀏覽(28)
  • 軟件測試技術之單元測試—工程師 Style 的測試方法

    什么是單元測試? Wikipedia 對單元測試的定義: 在計算機編程中,單元測試(Unit Testing)又稱為模塊測試,是針對程序模塊(軟件設計的最小單位)來進行正確性檢驗的測試工作。 在實際測試中,一個單元可以小到一個方法,也可以大到包含多個類。從定義上講,單元測試和

    2024年02月12日
    瀏覽(35)
  • 軟件測試技術之單元測試—工程師 Style 的測試方法(2)

    怎么寫單元測試? JUnit 簡介 基本上每種語言和框架都有不錯的單元測試框架和工具,例如 Java 的 JUnit、Scala 的 ScalaTest、Python的 unittest、JavaScript 的 Jest 等。上面的例子都是基于 JUnit 的,我們下面就簡單介紹下 JUnit。 JUnit 里面每個 @Test 注解的方法,就是一個測試。@Ignore 可以

    2024年02月11日
    瀏覽(20)
  • 軟件測試技術之單元測試—工程師 Style 的測試方法(3)

    如何設計單元測試? 單元測試設計方法 單元測試用例,和普通測試用例的設計,沒有太多不同,常見的就是等價類劃分、邊界值分析等。而測試用例的設計其實也是開發(fā)者應該掌握的基本技能。 等價類劃分 把所有輸入劃分為若干分類,從每個分類中選取少數有代表性的數據

    2024年02月12日
    瀏覽(30)
  • 2023年軟件測試工程師,初級到高級進階路線指南,測試之路...

    提到軟件測試工程師時,很多人依然會聯想到那些“點點點”并企圖在“點點點”中找到缺陷的人,也就是大家常說的依照測試規(guī)范和測試案例來對軟件進行測試,檢查軟件是不是有缺陷,判斷軟件是不是穩(wěn)定。但這其實是一個很不好的觀點。 近年來,隨著各大互聯網企業(yè)的

    2024年02月09日
    瀏覽(28)
  • 軟件測試工程師postman使用基本操作方法

    軟件測試工程師postman使用基本操作方法

    本文詳細介紹了如何使用Postman進行軟件測試,包括管理測試用例集,發(fā)送請求,設置全局和環(huán)境變量,編寫前置腳本和斷言,進行數據關聯,實現文件參數化,以及使用Newman命令執(zhí)行Postman腳本。

    2024年02月04日
    瀏覽(56)
  • 2023軟件測試工程師必備技能?要卷,誰還不會了......

    2023軟件測試工程師必備技能?要卷,誰還不會了......

    軟件測試崗位是怎樣的? 大伙:測試?簡單啊,沒什么技術含量,無非就是看需求、看業(yè)務手冊、看設計文檔、然后點點功能是否實現,麻煩點的就是測試下部署安裝是否出現兼容性問題等 web自動化測試:https://www.bilibili.com/video/BV1MS4y1W79K/ 沒錯,不可否認這是踏入軟件測試

    2023年04月20日
    瀏覽(36)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領取紅包,優(yōu)惠每天領

二維碼1

領取紅包

二維碼2

領紅包