Recently IoT testing becomes a popular topic in the industry and academic context. New challenges have been identified and existing test methods and techniques need to be collected, optimized and applied. Furthermore, innovative software development approaches are under consideration and partly implemented. However automated test execution still need powerful means and infrastructure. Open source projects like the Eclipse IoT-Testware project can provide valuable tools for advanced testing in IoT. The presentation gives an overview and first results with our IoT test Infrastructure.
1 of 34
Download to read offline
More Related Content
Test Execution Infrastructure for IoT Quality analysis
1. Axel Rennoch, Sascha Hackel, Dorian Knoblauch
2nd Int. Workshop on Verification and Validation of Adaptive Software Systems,
IEEE Int. Conference on Software Security and Reliability (QRS), 18th July 2018, Lisbon
TEST EXECUTION INFRASTRUCTURE
FOR IOT QUALITY ANALYSIS
3. 3
? IoT Testing
? Challenges and scope
? IoT test language: TTCN-3
? Project IoT-T
? Eclipse IoT-Testware
? Standardization & Certification
? Summary and outlook
AGENDA
4. 4
? Mirai botnet, October 2016:
? botnet using insecure configured IoT-devices (~100.000)
? attack causes blackout and disruption
(e.g. Amazon, Netflix, Twitter, Github)
? Wannacry, May 2017
? ransomeware affecting the whole world (e.g. hospitals in the U.K.)
? KRACK: Key Reinstallation Attack, October 2017
? Replay attack on Wi-Fi ProtectedAccess protocol
? Spectre and Meltdown, January 2018
? Spectre: vulnerability that allows observable side effects from mispredicted
speculative executions
? Meltdown: hardware vulnerability that allows to read all memory
MOTIVATION FOR QUALITY
10. 10
INTEGRATION OF SEVERAL TESTING APPROACHES
IoT
Testing
Software
Testing
System
Testing
Security
Testing
Test
Automation
Protocol
Testing
11. 11
? Less resources needed (time and money)
? Avoid human mistakes due to manually testing
? During test development and execution
? Speed-up of regression tests and product time-to-market
TEST AUTOMATION
13. 13
? Toolset (selection of available means)
Protocol tester/monitor (Eclipse Titan, Wireshark)
Test devices (RFID kit, Bluetooth test device)
GUI tester (Selenium, SikuliX, Chrome headless)
Web services tester (soapUI)
´
? Public Testsuites (in development)
? Application of a standardized notation
? Abstract and platform-independent
TESTWARE
15. 15
? TTCN-3 is the Testing and Test Control Notation
? Internationallystandardized testing language for formally defining test
scenarios.
? Designed purely for testing
CHALLENGE TEST AUTOMATION
testcase Hello_Bob () {
p.send(^How do you do?^);
alt {
[]p.receive(^Fine!^);
{setverdict( pass )};
[else]
{setverdict( inconc )} //Bob asleep!
}
}
16. 16
? One test technologyfor different tests
? Distributed, platform-independent testing
? Integrated graphical test development, documentation and analysis
? Adaptable, open test environment
? Areas of Testing
? Conformance and functional testing
? Interoperability and integration testing
? Real-time, performance, load and stress testing
? Security testing
? Regression testing
? Used for system and product qualification and certification
DESIGN PRINCIPLES OF TTCN-3
18. 18
Take available software and tools ´
´ and adding public testuites as a result of insights from IoT testing:
IOT-TESTWARE
´
https://projects.eclipse.org/projects/technology.iottestware
19. 19
? Supplement to running and active Eclipse projects
? Paho, OM2M, Titan
? New project at Eclipse Foundation:
https://projects.eclipse.org/projects/technology.iottestware
? TTCN-3 test suites for CoAP, MQTT, OPC-UA, LoRa?
? Assured licenses for users
? Currently in cooperation with
relayr GmbH, Ericsson, LAAS/CNRS, itemis AG, Spirent Communications,
Easy Global Market, Iskratel/Sintesio, ´
THE ECLIPSE PROJECT
20. 20
SAMPLE TESTSUITE STRUCTURE: MQTT
? Broker as SUT
? All mandatory message data fields
? Regular and illegal data
(Fixed/variable header, payload)
? Protocol features
? General
? Connect/disconnect (session)
? Subscribe/unsubscribe
? Immediate publish
? Last will and Testament (LWT)
? Heartbeats keepAlive values
? Topic
? Error handling
? Client as SUT
? ´
21. 21
TEST DEVELOPMENT SAMPLE: MQTT
TESTZIEL-KATALOG
? Test configurations
? Test Suite Structure
? Test purpose (catalogue)
? Test implementation (TTCN-3)
25. 25
Results for CoAP:
- Initially, 4421 fuzzed test data for CoAP were generated
- After sending the data to a (local) CoAP server, it crashed after date ^1107 ̄
https://www.fokus.fraunhofer.de/de/sqc/security_testing
https://github.com/fraunhoferfokus/Fuzzino/blob/master/doc/Fuzzino_XML_Description.pdf
FUZZINO RESULTS AND RESOURCES
27. 27
? New Working Group (TST) will develop
IoT test catalogues and specifications (not covered elsewhere)
? The types of testing include
conformance, interoperability, security and performance testing
? The initial technical focus will be:
? IoT network layer
(communication protocols, node connectivity, edge computing etc.),
? Basic security of IoT devices
ETSI TC MTS
33. 33
? Adding more protocols to IoT-Testware
AMQP, LWM2M, 6LoWPAN, LPWAN
? Increased security level for certification
? Cooperation/liaisons (in preparation) with
ETSI TC Cyber/SmartM2M, oneM2M, OPC Foundation ...
OUTLOOK