2017年華為筆試經驗
華為認證考試由VUE(PearsonVUE)考試服務公司代理。以下是小編整理的2017年華為筆試經驗,供大家參考。
1. 怎么來設計測試方案
根據測試需求(包括功能需求和非功能性需求),識別測試要點,識別測試環境要求,安排測試輪次,根據項目計劃和開發計劃做整體的測試安排。
被測試的特性:通過對需求規格說明書進行分析,列出本次測試需要進行測試的各部分特性(如要測試的功能需求、性能需求、安全性需求等等);
不被測試的特性:由于資源、進度等方面原因,本次測試不列入測試范圍的特性;
測試組網圖:進行本次系統測試所需要的軟硬件設備、配置數據已及相互間的邏輯、物理連接。今后測試執行時需要依據這個組網圖來進行環境的搭建。
2. 如果給你一個B/S系統你怎么來進行測試?
閱讀系統需求,充分理解需求,記錄問題,并與項目需求人員充分溝通。
編寫測試需求,包括系統功能和非功能測試要點、測試類型、測試進度質量要求等。
制定測試計劃,包括熟悉測試業務、設計測試用例、執行測試用例、進行測試小結、編寫測試報告,任務顆粒度一般應小于5人天
編寫測試用例,根據測試方案設計用例,即便沒有明確的性能和安全測試要求,也應識別進行此兩項測試。
執行軟件測試,
進行測試小結,如果測試持續時間較長,每個版本間隙總結本輪測試。
編寫測試報告,總結測試過程,匯總度量數據。
3. 怎么進行工作流的測試
把握需求,找準結點,理清流程,畫出流轉圖,弄清節點間的數據流轉,設計測試用例的時候必須覆蓋所有可能的流程。
工作流:
如果問到有沒有做過,根據對工作流的了解情況回答,如果比較了解,可以把參與的某個項目中說上一些有工作流的,如果不是很了解就說沒有做過,但是學習過相關知識。
4. 在做性能測試的時候都需要關注哪些參數?
并發訪問量,服務器響應時間(最小、平均、最大)
并發性能測試的過程是一個負載測試和壓力測試的過程,即逐漸增加負載,直到系統的瓶頸或者不能接收的性能點,通過綜合分析交易執行指標和資源監控指標來確定系統并發性能的過程。
負載測試(Load Testing)是確定在各種工作負載下系統的性能,目標是測試當負載逐漸增加時,系統組成部分的相應輸出項,例如通過量、響應時間、CPU負載、內存使用等來決定系統的性能。
負載測試是一個分析軟件應用程序和支撐架構、模擬真實環境的使用,從而來確定能夠接收的`性能過程。壓力測試(Stress Testing)是通過確定一個系統的瓶頸或者不能接收的性能點,來獲得系統能提供的最大服務級別的測試。
疲勞測試是采用系統穩定運行情況下能夠支持的最大并發用戶數,持續執行一段時間業務,通過綜合分析交易執行指標和資源監控指標來確定系統處理最大工作量強度性能的過程。 疲勞強度測試可以采用工具自動化的方式進行測試,也可以手工編寫程序測試,其中后者占的比例較大。
一般情況下以服務器能夠正常穩定響應請求的最大并發用戶數進行一定時間的疲勞測試,獲取交易執行指標數據和系統資源監控數據。如出現錯誤導致測試不能成功執行,則及時調整測試指標,例如降低用戶數、縮短測試周期等。還有一種情況的疲勞測試是對當前系統性能的評估,用系統正常業務情況下并發用戶數為基礎,進行一定時間的疲勞測試。
大數據量測試可以分為兩種類型:針對某些系統存儲、傳輸、統計、查詢等業務進行大數據量的獨立數據量測試;與壓力性能測試、負載性能測試、疲勞性能測試相結合的綜合數據量測試方案。大數據量測試的關鍵是測試數據的準備,可以依靠工具準備測試數據。
5. 如果客戶沒有給你性能指數時,你怎么來開展性能測試工作?
如果客戶沒有提出明確的性能指標,可以按照慣例和經驗設置,需要和PM協商,一般由PM確認,QA負責給出建議。
舉例說一個Server端程序,要求峰值時CPU和MEM消耗在75%以下,而一個頁面的訪問響應時間一般認為用戶的忍耐時間是3-5秒以內,這些要參考實際的應用來確定用戶規模、操作頻率、同時在線數等。
6. 有沒有做過接口測試,是如何做的?
通過編寫測試程序, 獲得接口指針, 逐個調用接口函數驗證其正確性, 及失敗操作
7. 測試方案都寫什么內容?
2017年華為筆試部分題目
1. 找錯
void test1()
{
char string[10];
char* str1="0123456789";
strcpy(string, str1);
}
答:表面上并且編譯都不會錯誤。但如果string數組原意表示的是字符串的話,那這個賦值就沒有達到意圖。最好定義為char string[11],這樣最后一個元素可以存儲字符串結尾符'\0';
void test2()
{
char string[10], str1[10];
for(int I=0; I<10;I++)
{
str1[I] ='a';
}
strcpy(string, str1);
}
答:strcpy使用錯誤,strcpy只有遇到字符串末尾的'\0'才會結束,而str1并沒有結尾標志,導致strcpy函數越界訪問,不妨讓str1[9]='\0',這樣就正常了。
void test3(char* str1)
{
char string[10];
if(strlen(str1)<=10)
{
strcpy(string, str1);
}
}
答:這又會出現第一道改錯題的錯誤了。strlen(str1)算出來的值是不包含結尾符'\0'的,如果str1剛好為10個字符+1結尾符,string就得不到結尾符了。可將strlen(str1)<=10改為strlen(str1)<10。
2. 找錯
#define MAX_SRM 256
DSN get_SRM_no()
{
static int SRM_no;
int I;
for(I=0;I {
SRM_no %= MAX_SRM;
if(MY_SRM.state==IDLE)
{
break;
}
}
if(I>=MAX_SRM)
return (NULL_SRM);
else
return SRM_no;
}
答:我不知道這段代碼的具體功能,但明顯有兩個錯誤
1,SRM_no沒有賦初值
2,由于static的聲明,使該函數成為不可重入(即不可預測結果)函數,因為SRM_no變量放在程序的全局存儲區中,每次調用的時候還可以保持原來的賦值。這里應該去掉static聲明。
3. 寫出程序運行結果
int sum(int a)
{
auto int c=0;
static int b=3;
c+=1;
b+=2;
return(a+b+c);
}
void main()
{
int I;
int a=2;
for(I=0;I<5;I++)
{
printf("%d,", sum(a));
}
}
答:8,10,12,14,16
【2017年華為筆試經驗】相關文章:
華為面試筆試經驗總結10-22
華為筆試網絡題08-22
最新華為技術服務類筆試經驗分享07-15
華為認證筆試試題05-09
華為招聘筆試題目02-11
華為的Java筆試題07-31
華為C++筆試題12-25
華為2017筆試題08-16
華為認證筆試題大全11-09