該模塊主要由核心模塊、腳本語言解釋器模塊和支持庫模塊組成。
3.2.1 核心模塊
該模塊主要作用是對測試腳本中的關鍵字信息進行解析,并控制腳本的執行。它由數據解析器、腳本解析器、腳本執行器、中間層四部分組成。其中,數據解析器負責數據關鍵字的解析;腳本解析器負責解析腳本中的邏輯關鍵字;腳本執行器負責腳本的執行;中間層負責測試庫調用。
3.2.2 腳本語言解釋器模塊
腳本語言解釋器模塊包括三個部分,即詞法分析器、語法分析器和解釋器。詞法分析器負責將輸出的字符流解析為一個個的詞[5~7];語法分析器負責將詞序列解析為具有語義的語句[8];解釋器負責語義的翻譯。
3.2.3 支持庫模塊
支持庫包括兩個部分:a)所有測試可以共用的庫,包括日志庫和測試支持庫。日志庫負責向測試人員提供日志記錄的功能;測試支持庫則提供所有測試能共用的功能。b)GUI測試庫主要作用是支持Linux下對桌面應用程序的測試。
4 結束語
依靠傳統的自動化工具來完成Linux下的GUI測試非常困難。一是因為捕捉產生的腳本維護困難;二是由于錄制的測試腳本與測試數據耦合得太緊密導致錄制生成的測試腳本可復用性較差,生存期短。而LKDT框架采用的關鍵字驅動則是一種截然不同的思想,它把傳統測試腳本中的變化與不變的東西進行了分離,這種分離使得分工更明確,并且避免了它們相互之間的影響。
當然對于該框架仍有許多工作需要探討。例如如何使測試框架提供分布式測試支持以及需要考慮到Linux操作系統中用戶權限問題等,通過后續研究以期使之成為一個更加簡單、易用、高效的自動化測試框架。
原文轉自:http://www.uml.org.cn/Test/201006074.asp