The purpose of the analyzer test is to guarantee the '''correctness and robustness''' for each MobileInsight analyzer. 


===Methodology===

We apply '''unit test''' to each analyzer by '''replaying logs'''. The unit test is performed on laptop rather than on the phone, because the analyzer code is platform-independent (P4A does not support unittest module). Throughout these tests, we use QmdlReplayer to replay representative offline logs from different network operators (AT&T, T-Mobile, Verizon, Sprint, China Mobile, etc.) and 3GPP releases. We assume the QmdlReplayer functions correctly. 

In general, the tests can be classified into two categories: '''single analyzer''' test and '''multi-analyzer''' test. In single analyzer test, each time only 1 analyzer is tested. In multi-analyzer test (NOT DONE), we test the composition of different analyzers, and check wether there are any conflicts.