Search-Based Testing for Embedded Telecom Software with Complex Input Structures
In this paper, we discuss the application of search-based software testing techniques for unit level testing of a real-world telecommunication middleware at Ericsson. Our current implementation analyzes the existing test cases to handle non-trivial variables such as uninitialized pointers, and to discover any setup code that needs to run before the actual test case, such as setting global system parameters. Hill climbing (HC) and (1+1) evolutionary algorithm (EA) metaheuristic search algorithms are used to generate input data for branch coverage. We compare HC, (1+1)EA, and random search with respect to effectiveness, measured as branch coverage, and efficiency, measured as number of executions needed. Difficulties arising from the specialized execution environment and the adaptations for handling these problems are also discussed.
KeywordsRandom Search Hill Climbing Test Data Generation Branch Coverage Abstract Syntax Tree
- 1.Doganay, K., Eldh, S., Afzal, W., Bohlin, M.: Search-based testing for embedded telecommunication software with complex input structures: An industrial case study. Tech. Rep. 5692, SICS Swedish ICT (July 2014)Google Scholar
- 2.Leary, K., Waddington, W.: DSP/C: a standard high level language for DSP and numeric processing. In: International Conference on Acoustics, Speech, and Signal Processing, ICASSP 1990, vol. 2, pp. 1065–1068 (1990)Google Scholar
- 4.McMinn, P.: Search-based software testing: Past, present and future. In: Search-Based Software Testing: Past, Present and Future, ICSTW 2011, pp. 153–163. IEEE Computer Society, Washington, DC (2011)Google Scholar