{'fraction_non_alphanumeric': 0.011568123393316195, 'fraction_numerical': 0.0, 'mean_word_length': 4.901515151515151, '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}}
Functional testing of object-oriented software

The goal of functional testing is to prove that the software performs in conformance with its specification. Functional testing emphasizes the behavioral characteristics of objects by focusing on the interface that is the public, and defining, feature of a class. There are functional test cases for each individual method and functional test cases that treat the class as a unified component. An algorithm that guides the construction of functional test cases for a class is presented. That algorithm can easily be modified to produce test cases at a greater level of coverage. The input to the algorithm will be portions of the class specification that is produced to guide the design process as much as for the testing process.