{'fraction_non_alphanumeric': 0.027744270205066344, 'fraction_numerical': 0.0024125452352231603, 'mean_word_length': 5.434108527131783, '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}}
Guided, Automated Testing of Blockchain-Based Decentralized Applications

As blockchain-based decentralized applications (DApp) become increasingly popular recently, there is an urgent demand for effective testing schemes and tools. Due to the complexity introduced by application-blockchain interaction, existing testing methods become non-applicable. In this paper, we present a guided and automated framework called Sungari to test DApps. The insights behind Sungari are two-fold. First, we employ random events to infer an abstract relation between frontend and blockchain. Second, we use the relation to generate event sequnces in a guided manner that can cover blockchain smart contracts as quick as possible. In a real-world DApp case study, Sungari outperformed random approach by covering 33% more application use cases.