[Supplementary material] SATORI: Static Test Oracle Generation for REST APIs
收藏资源简介:
This is the supplementary material for the paper entitled: SATORI: Static Test Oracle Generation for REST APIs We now describe the content of the different directories of this replication package. ConversationsWithAPIProviders This directory contains anonymized screenshots of different conversations with the API providers. It is organized in two subdirectories: - bugReports: Contains reports of the real faults detected in the API operations used for our experiments, as well as videos that show how to replicate them. - Questions to API providers: Contains screenshots of different conversations maintained with the API providers, with the purpose of clarifying specific aspects of the functionality of different APIs when creating the manually annotated ground truth (i.e., OKAMI dataset). Data experiment 1 Contains all the data related to experiment 1, which compares the performance of different LLMs for generating test oracles from an OAS document. It contains the following subdirectories: - metrics_experiment1: Metrics that report the performance of SATORI when using different LLMs and AGORA+. - model_predictions: Contains the predictions returned by all the LLMs used in our study for generating test oracles for all the API operations of our study. - postman_assertify_inputs: Contains only the correctly generated test oracles (i.e., true positives) of all the LLMs of our study, in a format that can be used as input for our extended version of PostmanAssertify. It also contains the ground truth in a format processable by PostmanAssertify. Data experiment 2 Contains all the data related to experiment 2 (artificial fault detection). It is divided in two items: - API operations: Experiment 2 data divided by API operation. For each operation, it contains the OAS document of the API, invariant data, and mutation data (i.e., original and mutated test cases, as well as reports of the performance of each approach in terms of FDR for each mutant). - metrics_experiment2: Performance of each approach (SATORI, AGORA+, AGORA+u and ground truth) in terms of Failure Detection ratio. - JSONMutatorConfiguration.md: List of all the mutation operators used in our study. OKAMI dataset Directory containing the OKAMI dataset in CSV format. Each dataset instance contains all the information of an API response field, including its machine readable data, test oracles, and the prompt generated by SATORI. We plan to publish this dataset on Hugging Face to enhance its usability; for now, we provide it as a CSV file due to the double-blind review process. Source code Source code of all the artifacts developed/used for our research, namely: JSONMutator, PostmanAssertifyStatic, and SATORI. Each project includes documentation and test cases. We plan to publish PostmanAssertifyStatic and SATORI on GitHub to enhance their accessibility; for now, we provide them as a zip files due to the double-blind review process.



