女人自慰AV免费观看内涵网,日韩国产剧情在线观看网址,神马电影网特片网,最新一级电影欧美,在线观看亚洲欧美日韩,黄色视频在线播放免费观看,ABO涨奶期羡澄,第一导航fulione,美女主播操b

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

一名軟件測試工程師的加班經(jīng)歷

工程師人生 ? 來源:工程師吳畏 ? 2019-06-27 16:58 ? 次閱讀

背景:

我們的軟件產(chǎn)品需要在A、B、C三種硬件平臺(tái)(理論上對(duì)我們的軟件影響是不大的)上工作,早些時(shí)候已經(jīng)成功在A上工作了,但在B、C上還有些問題,加班的那天是一個(gè)deadline,需要保證在B、C上也能夠工作。這個(gè)產(chǎn)品由X、Y、Z三個(gè)部分組成,分別由三個(gè)team負(fù)責(zé),基本的關(guān)系是:X和用戶打交道,X調(diào)用Y,Y是數(shù)據(jù)進(jìn)數(shù)據(jù)出,Y調(diào)用Z,Z和硬件打交道。

其中,X和Y都是新寫的程序,而且早些時(shí)候,在X上發(fā)現(xiàn)了較多BUG,Y基本上沒發(fā)現(xiàn)問題。Z的代碼在以前的產(chǎn)品中就有,相對(duì)已經(jīng)比較穩(wěn)定。由于項(xiàng)目的時(shí)間壓力,這三個(gè)部分沒有時(shí)間做分別的測試,只是程序員簡單測一下自己的代碼后,就要集成和測試了(這就是我的具體工作)。除了三個(gè)team的leader留下外,X的程序員都留下了;Y的leader檢查了team members的工作后,認(rèn)為沒什么問題就放他們回家了;Z的leader最“無辜”,目送所有手下下班后,自己不得不留下。

都是指針惹的禍:

一開始要加班是因?yàn)閄的工作還沒有完成,于是大家就一邊等,一邊“催”(X的leader聲稱要到12點(diǎn)才能完成,真是烏鴉嘴),一邊各忙各的(我在上網(wǎng)看新聞)。事實(shí)上,X到7點(diǎn)多就完成了,但一測試發(fā)現(xiàn)有明顯的內(nèi)存訪問問題。于是X就調(diào)試,由于X在內(nèi)存訪問問題上已經(jīng)“臭名昭著”了,所以大家(至少我)相信是以前類似的問題,或者是以前的修改沒有徹底。

但很快,X發(fā)現(xiàn)問題是:Y傳了一個(gè)空指針給X;很快,Y也證實(shí)了X的說法。大家責(zé)問Y,為什么程序員自己測試時(shí)沒有發(fā)現(xiàn)?其實(shí)很簡單,程序員的單元測試程序會(huì)檢查是否是空指針,如果空就打印空行。于是,X和Y開始“踢球”,互相要對(duì)方加上空指針的錯(cuò)誤處理代碼;但踢了一會(huì)后,新的疑問出現(xiàn)了,Y照理不應(yīng)該出現(xiàn)空指針,所以要么Y的代碼有問題,要么Y要證明自己沒錯(cuò)。

找一個(gè)BUG好難:

于是Y的leader也加入了調(diào)試隊(duì)伍,因?yàn)閅的代碼都有詳細(xì)的Log,所以很快就定位到了他的一個(gè)team member的代碼里。不幸的是,Y learder的開發(fā)機(jī)器在關(guān)鍵時(shí)刻down掉了。好在我們初步實(shí)施了軟件配置管理,Y leader很快在別人的機(jī)器上重新搭建好了調(diào)試環(huán)境。

Y作了些修改(事實(shí)上,他改的這些代碼都是無關(guān)緊要的),經(jīng)我測試后,發(fā)現(xiàn)還是不行。以我的職業(yè)感覺,我覺得X也有問題(后來知道是歪打正著)。但X寧可上sina看“北京某景區(qū)有人裸泳”也不肯檢查一下自己的代碼。Y經(jīng)過艱苦的調(diào)試(其實(shí)絕大部分時(shí)間我想是在理解這些不屬于他的代碼),發(fā)現(xiàn)是因?yàn)槟硞€(gè)數(shù)據(jù)沒有取得而導(dǎo)致了空指針的出現(xiàn),但照理,Z應(yīng)該總是把這項(xiàng)數(shù)據(jù)傳送給Y的。但Y對(duì)Z的“指控”很快被證明是無效的,因?yàn)閆 leader向大家“展示”了她從硬件取得的數(shù)據(jù)是好好的。

于是,Z leader繼續(xù)吃餅干;Y leader繼續(xù)調(diào)試;X一干人等繼續(xù)“研究”我國風(fēng)景區(qū)的管理問題。而我也終于無聊到了極點(diǎn),開始“友情贊助”,檢查Y的問題代碼。代碼很少注釋,寫得也很隨意,甚至縮進(jìn)的格式都顯林亂;但好在代碼不長,邏輯也不復(fù)雜。我重點(diǎn)檢查了內(nèi)存的操作,但沒有發(fā)現(xiàn)問題。

正在我納悶同樣一段代碼,為什么其他數(shù)據(jù)都可以取得,偏偏這項(xiàng)數(shù)據(jù)取不到的時(shí)候,傳來了Y learder的叫聲。雖然聽起來很像絕望后的慘叫,但我敢肯定,這的確是找到真正問題后的歡呼(和慘叫相似也是情理之中,畢竟都是在身心及其疲憊后發(fā)出的)。果然,他發(fā)現(xiàn)了:這項(xiàng)取不到的數(shù)據(jù)的名稱寫錯(cuò)了,應(yīng)該是Status,但寫成了State。(Y向Z要數(shù)據(jù)時(shí),要傳給Z一個(gè)數(shù)據(jù)的名稱,然后Z就從硬件取得,并返回給Y。這些數(shù)據(jù)的名稱是Z定義的)那么,怎么會(huì)發(fā)生這種低級(jí)錯(cuò)誤的呢?原來,出錯(cuò)的代碼Y的那個(gè)程序員從另外一處Copy來的,其他數(shù)據(jù)項(xiàng)的名稱都是相同的,偏偏這項(xiàng)數(shù)據(jù)的名稱不同。

有多少Code可以重來:

Y leader忙著改C文件和H文件,因?yàn)檫@個(gè)數(shù)據(jù)項(xiàng)的名稱出現(xiàn)在多處,所以Y leader改得很仔細(xì),也很辛苦;我想他心里一定在臭罵他的這個(gè)team member,為什么不定義一個(gè)常量或者宏。在Y leader改代碼的時(shí)候,我也在想,這簡直就像Z在故意制造陷阱:這兩組數(shù)據(jù)這么類似,而且其他數(shù)據(jù)項(xiàng)的名稱都相同,為什么偏偏這項(xiàng)數(shù)據(jù),一個(gè)叫State,另一個(gè)叫Status,真是有空,真TMD。

Y leader終于確認(rèn)改正了所有該改的State。但用他的team member的單元測試程序一測發(fā)現(xiàn)還是有老問題。你可以想象到我們當(dāng)時(shí)的感覺,就像吃了一噸廣告上那個(gè)很夸張的“涼”得透頂?shù)臐櫤硖恰?/p>

但是! Y leader大叫:單元測試程序里的State也要改成Status。在無數(shù)雙眼睛的注視下,Y leader顫抖著replace all,save,F(xiàn)5。終于,當(dāng)大家看到計(jì)算機(jī)上的一串字符后,每個(gè)人都舒心的笑了。(當(dāng)然,如果沒有剛才的虛驚一場,可能不是每個(gè)人都在快工作到午夜的時(shí)候還能笑得動(dòng)的)。我想,此時(shí)此刻,此情此景,在Y leader的眼里,一定滾動(dòng)著些東西,除了眼屎。

現(xiàn)在,又輪到我上場了。Build時(shí)發(fā)現(xiàn)X的代碼中也需要把一些State改成Status。(如果當(dāng)初他們也檢查一下就好了)。X的程序員也沒有定義常量或者宏的習(xí)慣,所以我Build了多次,他們才把所有要改的State改掉。

一個(gè)QA的精彩:

后來發(fā)生的事可以用一個(gè)“峰回路轉(zhuǎn)”來形容,在無數(shù)雙眼睛的注視下(我的手沒有顫抖,因?yàn)槿艘呀?jīng)麻木了,或者說一切都習(xí)慣了),我啟動(dòng)了我們的軟件,連接到B平臺(tái)上,檢查所有的數(shù)據(jù),全部OK;連接到C平臺(tái)上,檢查所有的數(shù)據(jù),全部OK。搞定了!

“回家,回家,回家的感覺是多么多么……”,我想,當(dāng)時(shí),也許每個(gè)人的心里都在回蕩著王杰的這首老歌(如果知道這首歌的話),包括陪我們加班到深夜的可憐的老板。

當(dāng)其他人已打算轉(zhuǎn)身時(shí),我的思想在激勵(lì)的斗爭著。看著同事們的臉,包括老板滄桑的臉和幾張幼稚卻不顯年輕的程序員的臉,想著家里一天沒能見到老爸的孩子,我想回家,但是,我是QA。我默默的連上了A平臺(tái),然后發(fā)現(xiàn)什么數(shù)據(jù)都沒有。(如果把這個(gè)場景定格或者淡出,我怎么想都覺得象好萊塢預(yù)示續(xù)集的結(jié)尾)。

當(dāng)我喊住大家時(shí),我不知道該如何描述自己的感受。

無聲,無聲,又見無聲!突然,老板告訴大家:今天的deadline搞定B和C平臺(tái)就可以了,A平臺(tái)下個(gè)禮拜再說。管他是真是假,老板發(fā)話就可以了,還不開溜。3分鐘后(其中半分鐘是給CVS打上Tag),我坐上了回家的Taxi。

凌晨一點(diǎn)的上海還是霓虹閃爍,好美。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • 測試工程師
    +關(guān)注

    關(guān)注

    6

    文章

    125

    瀏覽量

    12662
收藏 人收藏

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    個(gè)優(yōu)秀的射頻測試工程師需要具備哪些技能?

    個(gè)優(yōu)秀的射頻測試工程師需要具備哪些技能?在無線技術(shù)高速發(fā)展的今天,射頻(RF)測試工程師是確保通信設(shè)備性能與用戶體驗(yàn)的關(guān)鍵角色。從復(fù)雜的調(diào)制方案到無處不在的干擾,從功耗優(yōu)化到標(biāo)準(zhǔn)合規(guī)性,工程
    的頭像 發(fā)表于 05-16 10:08 ?101次閱讀
    <b class='flag-5'>一</b>個(gè)優(yōu)秀的射頻<b class='flag-5'>測試工程師</b>需要具備哪些技能?

    問,成為硬件工程師需要幾只手?#硬件工程師 #YXC晶振 #揚(yáng)興科技 #搞笑

    硬件工程師
    揚(yáng)興科技
    發(fā)布于 :2025年04月25日 17:15:37

    如何成為一名合格的KaihongOS南向驅(qū)動(dòng)開發(fā)工程師

    如何成為一名合格的南向驅(qū)動(dòng)開發(fā)工程師 1. 我需要具備哪些方面的知識(shí)? KaihongOS南向適配的方向分為:驅(qū)動(dòng)開發(fā)、內(nèi)核開發(fā)。根據(jù)適配方向劃分,需要掌握的知識(shí)技能分別為: 驅(qū)動(dòng)開發(fā)
    發(fā)表于 04-23 08:02

    如何成為一名合格的KaihongOS北向應(yīng)用開發(fā)工程師

    如何成為一名合格的北向應(yīng)用開發(fā)工程師 在快速發(fā)展的軟件開發(fā)領(lǐng)域,北向應(yīng)用開發(fā)工程師個(gè)專注于系統(tǒng)級(jí)應(yīng)用開發(fā)的高需求職位。 以下是成為
    發(fā)表于 04-23 06:46

    硬件工程師手冊(全套)

    §1.2.1 硬件工程師職責(zé) 個(gè)技術(shù)領(lǐng)先、運(yùn)行可靠的硬件平臺(tái)是公司產(chǎn)品質(zhì)量的基礎(chǔ),硬件工程師職 責(zé)神圣,責(zé)任重大。yf-f4-06-cjy 1、硬件工程師應(yīng)勇于嘗試新的先進(jìn)技
    發(fā)表于 04-22 15:05

    如何成為一名嵌入式軟件工程師

    如何成為一名嵌入式軟件工程師? 01明確崗位的角色與定位 嵌入式軟件工程師主要負(fù)責(zé)開發(fā)運(yùn)行在特定硬件平臺(tái)上的軟件,這些軟件通常與硬件緊密集
    發(fā)表于 04-15 14:37

    招拿捏電子工程師#被AI拿捏了 #電子工程師 #電子電工

    電子工程師
    安泰小課堂
    發(fā)布于 :2025年03月25日 17:30:51

    如何成為嵌入式開發(fā)工程師

    ,參加相關(guān)的研討會(huì)和培訓(xùn)課程,閱讀專業(yè)書籍和論文。 9. 認(rèn)證和網(wǎng)絡(luò):- 考慮獲取相關(guān)認(rèn)證,這可以增加你的市場競爭力。- 加入專業(yè)組織和在線社區(qū),擴(kuò)展你的人際網(wǎng)絡(luò)。 通過上述步驟的學(xué)習(xí)和實(shí)踐,你可以逐步成長為一名合格的嵌入式開發(fā)工程師。記住,實(shí)際動(dòng)手做項(xiàng)目和解決實(shí)際問題是
    發(fā)表于 02-19 10:39

    月薪 3 萬的嵌入式工程師都在用,串口屏到底神在哪?

    作為一名資深的嵌入式工程師,我深知在選擇硬件組件時(shí),性能、可靠性、易用性和成本效益都是至關(guān)重要的考量因素。月薪3萬的嵌入式工程師們之所以傾向于使用串口屏,主要是基于以下幾個(gè)方面的考量
    的頭像 發(fā)表于 02-12 10:33 ?546次閱讀
    月薪 3 萬的嵌入式<b class='flag-5'>工程師</b>都在用,串口屏到底神在哪?

    如何成為一名合格的南向驅(qū)動(dòng)開發(fā)工程師

    內(nèi)核開發(fā) - c,cmake,dts, linux常用命令 以上,如能對(duì)某模塊的南向適配研究透徹,自行調(diào)通,積極解決問題。那么對(duì)一名kaihongOS的南向驅(qū)動(dòng)開發(fā)工程師而言,他便是合格的,若
    發(fā)表于 01-10 10:06

    如何成為一名合格的北向應(yīng)用開發(fā)工程師

    在快速發(fā)展的軟件開發(fā)領(lǐng)域,北向應(yīng)用開發(fā)工程師個(gè)專注于系統(tǒng)級(jí)應(yīng)用開發(fā)的高需求職位。 以下是成為一名合格的KaihongOS北向應(yīng)用開發(fā)工程師
    發(fā)表于 01-10 10:00

    嵌入式工程師常用的開發(fā)工具有哪些?

    項(xiàng)目管理和調(diào)試。IAR Embedded Workbench 也是廣受歡迎的 IDE,具有出色的優(yōu)化能力和調(diào)試工具,能夠幫助工程師快速開發(fā)出高質(zhì)量的嵌入式軟件。 二、編譯器 編譯器將高級(jí)語言
    發(fā)表于 12-20 15:29

    嵌入式軟件工程師如何提升自己?

    嵌入式軟件工程師如何提升自己? 作為一名嵌入式軟件工程師,在這個(gè)充滿機(jī)遇和挑戰(zhàn)的領(lǐng)域里,如何提升自己顯得非常重要,它決定了你未來的發(fā)展方向和成就。接下來,我們起探討
    發(fā)表于 06-12 11:20