Daily Tests - SAST March , © Ascom1 Daily Tests of Embedded Systems
Daily Tests - SAST March , © Ascom2
3 Why and What have Ascom done with ’Daily Tests’? Try to reduce time from Error to Identification in the software development process. Fault Failure Detection Identification Bug Tracker Error
Daily Tests - SAST March , © Ascom4 James Bach’s words on the subject For technical reasons why you rationally repeat tests... Recharge Intermittence Mutation Retry Benchmark For business reasons why you rationally repeat tests... Inexpensive Importance Enough Mandated Indifference/avoidance
Daily Tests - SAST March , © Ascom5 Where are daily automatic tests in the test process of Ascom Integration test System test Daily test Module test You are here Testers Software engineers DMZ
Daily Tests - SAST March , © Ascom6 Types of tests Static Code Tests Lines of code ToDo’s Lint warnings Compiler warnings Functional Tests & Profiling Software upgrade Browse MMI Change parameter through MMI Call Send alarm Message reception Roaming Bearer Handover Non-functional Tests (Performance) Calls Messaging Alarm Permutations of above while stationary or moving
Daily Tests - SAST March , © Ascom7 Evolution of test interface Production test State reporting Event synthesis Profiling Parameter Setup Level Time
Daily Tests - SAST March , © Ascom8 Change Benefit Benefit of automated test as a function of the changes in the test Browse MMI Grade of Service Tests Lines of code Change Parameter Trough MMI
Daily Tests - SAST March , © Ascom9 The good and the bad about testing during implementation YesterdayToday
Daily Tests - SAST March , © Ascom10 Example – DECT-telephone software CVS Checkout Compilation Files Web Download Software Execute Tests Create Report Analyze Execute Report Analyze
Daily Tests - SAST March , © Ascom11
Daily Tests - SAST March , © Ascom12 Found bugs (during 3 months) Process starvation. Uninitialized variable resulting in dangerous pointers. Index pointer outside array. Parameter not set correctly through MMI. Timing problems between tasks. Heap overflow. Stack overflow. Memory leakage. Logical error in state machine.
Daily Tests - SAST March , © Ascom13 Improvements in the development process More frequent check-ins, which minimizes delays in integrations. Less broken builds, which helped teams to move on to other tasks. More feedback, which increases actions & learning. Watch out for spam feedback, which causes people to ignore messages.
Daily Tests - SAST March , © Ascom14 Conclusions + Helps developers improve code quality. + Labeled software for testers on a daily basis. + Helps break anti-patterns in the development process. + Gives Benchmarks/KPIs for test- and development process. + Rapid detection and identification of major errors. + Good for detecting run-time errors.
Daily Tests - SAST March , © Ascom15 Conclusions cont. - Adds labour. - Changing code – changing tests. - Needs daily supervision. - Very limited test coverage. - Does not replace other types of tests (Module- Integration- System test) + Does not replace the need for testers.
Daily Tests - SAST March , © Ascom16 Ok, I’m hooked. What do I need to get started? Code Compiler Scripting skills File area Web server Devices to test Sufficient hooks for event synthesis in SW Possibility to exchange SW (in HW) State & event reporting from SW Profiling statistics Basic knowledge
Daily Tests - SAST March , © Ascom17 Tools and Links PC-lint
Daily Tests - SAST March , © Ascom18 THANK YOU! Peter Kaltenbrunner 031 –