{'fraction_non_alphanumeric': 0.027937551355792935, 'fraction_numerical': 0.0, 'mean_word_length': 4.970588235294118, 'pattern_counts': {'":': 0, '<': 0, '<?xml version=': 0, '>': 0, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
ICAT: An IoT Device Compatibility Testing Tool

At present, the application of the Internet of Things (IoT) is typically centered on a gateway device controlled/manipulated by the user with a mobile App. The peripheral (sensor) devices send the surrounding information (such as temperature, humidity, etc.) to the gateway, which processes and uploads the information to the cloud. When developing the software of an IoT device (a gateway device, App, or peripheral device), it is important to make sure that the device is compatible with the other devices. In particular, before releasing a new version, the tester needs to conduct a thorough testing to ensure that the new version is compatible to all versions of the other devices. This is costly and very time consuming. To overcome this problem, this paper proposes a compatibility testing tool called ICAT (Internet of things CompAtibility Testing tool). ICAT allows a tester to select a target environment, a particular version combination of the IoT devices, and performs compatibility testing for the devices. A test report is offered when the testing is completed. Our experimental results show that using ICAT can improve test coverage and reduce test cost.