在有狀態機下,寫自動測試需要注意的問題

2022-05-06 18:48:07 字數 408 閱讀 9657

在沒有狀態機的情況下,可以完全仿照客戶的使用習慣進行ui執行緒上的模擬,比如click(), drag(), drop()等等,這樣可以不用寫另外的函式,而只需要直接拿來 一些現成的ui表現來進行模擬。

但如果你的專案的全域性狀態下由狀態機驅動的時候,這個時候就要注意了,如果你模擬ui的動作可能會出現一些狀態機不能模擬到的事件----比如狀態跳轉,假設a->b->c,這樣的狀態流,你在a狀態下,但由於你用了ui的函式,可能直接由a進入了c。

再比如如果你在a狀態,使用了ui函式,但這個時候你並沒有真正進入c狀態,這個時候,這個ui函式還管不管用也說不定了。

所以,在有狀態機的情況下,寫自動測試化指令碼,需要遵循狀態機的路線來行走,這樣可以避免出一些亂七八糟的錯誤,比如此時就可以遵循postevent->ui函式這樣的邏輯。

測試領域狀態機的編寫

我一直把測試領域的狀態機器分成2兩主幹 人機互動 主狀態.而主狀態一般嚴格分成 取引數 相當於c語言中的形參 採集,分析 處理,列印 報表,etc 說起來簡單,其實做起來不簡單 1.取引數,要想乙個pc做的能達到通用.這點非常重要,首先要分析需求 命令格式.比如,就拿我們自動測試系統來講,在此重點講...

簡單地用狀態機寫的按鍵檢測

在csdn上寫的第一篇文章,之前就聽說過狀態機,但並沒有感覺到其比普通按鍵的優越之處。接觸了實時作業系統之後,才領悟到這種按鍵檢測方法可以很好地利用cpu的資源 或者說不用實時作業系統時更體現優越性 這裡直接貼上按鍵檢測的 了 按鍵 led初始化 ucos系統就不贅述了 程式是stm32f103的,...

AC自動機 狀態機dp 修復DNA

生物學家終於發明了修復dna的技術,能夠將包含各種遺傳疾病的dn 段進行修復。為了簡單起見,dna看作是乙個由 a g c t 構成的字串。修復技術就是通過改變字串中的一些字元,從而消除字串中包含的致病片段。例如,我們可以通過改變兩個字元,將dn 段 aagcag 變為 aggcac 從而使得dn ...