全球微波存取互通 (Worldwide Interoperability for Microwave Access, WiMAX) 係由全球微波存取互通協會 (WiMAX Forum)根據IEEE 802.16e 所制定的標準電信技術,此技術可供資料以不同的方式來做無線存取。 為了推廣WiMAX技術,並方便廠商可針對WiMAX設備做測試,WiMAX Forum提供了以TTCN-3測試語言所建構的協定一致性之測試案例 (Protocol Conformance Testing, PCT);然而,TTCN-3測試語言並無法經由自身進行執行之動作。由台大電機自動軟體測試實驗室所開發的軟體測試工作平台(Software Testing Workbench)係一個整合性的測試工具,可針對此問題將TTCN-3測試語言轉換成可執行的C/C++程式。 本研究針對STW的編譯效能提出了幾項限制,並且發展出了一個全新的程式碼產生器來幫助STW解決此問題。首先我們透過Lex以及Yacc兩個工具,依TTCN-3測試案例建構出一顆語法分析樹,並利用程式碼產生器追蹤樹的節點來獲取必要資訊,最後再產生對應的可執行之C/C++程式碼格式。此外,我們不僅成功的提升編譯效能,更提供使用者更多的程序來建構測試案例。
Worldwide Interoperability for Microwave Access (WiMAX) is a telecommunications technology based on IEEE 802.16, and it provides wireless data in a variety of ways, from point-to-point links to full cellular type access. Protocol Conformance Testing (PCT) is provided by WiMAX Forum for the development of WiMAX. PCT executes the testcases designed in TTCN-3 for estimating whether the devices are designed according to the protocol. However, TTCN-3 core language can’t execute itself, and an integrating testing tool named Software Testing Workbench (STW) is developed to translate TTCN-3 into executable C/C++ code. We address the limitations of the STW, and successfully develop a new code generator for STW to solve the restrictions. We first translate the TTCN-3 core language into a parsing tree by Lex&Yacc. Therefore, the code generator can trace the parsing tree to extract the essential information, and generate the corresponding executable C/C++ code formats. Moreover, our approach enhances the compilation performance and supports more functions for users.