遇见数据集

GivenWhenThen (GWT)

收藏
Zenodo2025-11-10 更新2026-05-26 收录
官方服务:

资源简介:

GivenWhenThen (GWT The GivenWhenThen (GWT) dataset is a collection of 2,289 Behavior-Driven Development (BDD) test scenarios extracted from 4,327 real-world open source projects. Each scenario is a JSON object containing three main artifacts: (a) the feature file (BDD scenario in natural language), (b) the step definition file (code that implements the steps described in the scenario), and (c) a list of system code files used by the step definitions. This dataset is ideal for training and evaluating AI models, conducting empirical studies on BDD practices, and developing tools to automate or assist BDD test automation. Dataset Files: 1. GivenWhenThen.json (Main Dataset) The final dataset containing 2,289 complete BDD scenarios. Each JSON object represents a complete BDD scenario with repository metadata, language, feature content, step definitions content, and system code files. This is the result of the complete data collection process detailed in Section 3 of the paper. 2. projects_discovery.json Initial list of 4,327 unique repositories identified through GitHub API queries. Projects were discovered by searching for those that declared Cucumber as an explicit dependency in their configuration files (package.json, pom.xml, Gemfile, etc.) and contained at least one .feature file. (Phase 1: Projects Discovery - Section 3.1) 3. projects_selection.json Filtered list of 1,720 repositories after applying selection criteria: (a) valid feature files with at least one scenario and one step, (b) features written in English (verified with Langdetect library), and (c) confirmed use of official Cucumber library. These projects contain 7,872 valid feature files. (Phase 2: Projects Selection - Section 3.2) 4. exploitation.json Results of the Exploitation heuristic for mapping feature steps to step definitions. This high-precision strategy uses exact step text match and explicit reference properties. Detected 1,577 tuples with 97% manually validated precision. (Phase 3: Step Definitions Extraction - Exploitation Heuristic - Section 3.3) 5. exploration.json Results of the Exploration heuristic for mapping feature steps to step definitions. This broader strategy uses step text regex match and exact filename match properties. Detected 3,221 tuples with 94% manually validated precision. (Phase 3: Step Definitions Extraction - Exploration Heuristic - Section 3.3) 6. consolidated_dataset.json Intermediate dataset after integrating and refining Exploitation and Exploration heuristic results. Contains 3,747 unique pairs of feature files and step definition files before final system code detection. (Phase 4: Integration and Refinement - Section 3.4) 7. exploitation-to-evaluation.json Sample of 309 tuples used for manual validation of the Exploitation heuristic (97% precision). Contains feature step to step definition mappings with validation results. 8. exploration-to-evaluation.json Sample of 343 tuples used for manual validation of the Exploration heuristic (94% precision). Contains feature step to step definition mappings with validation results. Source Code Archives To ensure full reproducibility and transparency, all source code used in dataset construction is provided as zipped archives, corresponding to each stage of the data collection pipeline.Each archive includes a detailed README file describing installation requirements, execution instructions, environment setup, and output structure. Phase Archive Name Description 1 1-projects-discovery Tools for automated discovery of GitHub repositories using Cucumber/BDD. 2 2-projects-selection Filtering and validation of repositories containing valid and English-written BDD scenarios. 3 3-step-definitions-extraction-heuristic Implementation of the Exploitation and Exploration heuristics for linking feature steps to step definitions. 4 4-integration-and-refinement Integration and unification of heuristic outputs into a single consolidated dataset. 5 5-system-code-detection Static analysis module for detecting and associating relevant system source code files used in step definitions. — heuristic-evaluation Scripts and utilities for manual dataset validation and heuristic precision assessment.

提供机构:
Zenodo
创建时间:
2025-11-10
二维码
社区交流群
二维码
科研交流群
商业服务