awesome-repositories.com
博客
awesome-repositories.com

通过 AI 驱动的搜索,发现最优秀的开源仓库。

探索精选搜索Open-source alternativesSelf-hosted software博客网站地图
项目关于How we rank媒体报道MCP 服务器
法律隐私政策服务条款
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
Codeception avatar

Codeception/Codeception

0
View on GitHub↗
4,855 星标·1,283 分支·PHP·MIT·1 次浏览codeception.com↗

Codeception

Codeception 是一个 PHP 应用程序的全栈测试框架,为单元测试、功能测试和验收测试提供统一的界面。它作为通过 WebDriver 协议自动化真实桌面和移动浏览器的工具,并充当测试 REST 和 SOAP API 的客户端。

该框架的特色在于对行为驱动开发(BDD)的支持,允许用户使用 Gherkin 语言编写人类可读的测试规范,以使技术测试与业务需求保持一致。它实现了基于角色的动作映射,将这些自然语言步骤连接到可执行的 PHP 方法。

其功能涵盖了广泛的领域,包括 SQL 和 NoSQL 存储的数据库状态验证和管理、通过浏览器自动化模拟用户工作流,以及使用 JSON 和 XML 验证 API 数据结构。它还提供了用于衡量代码覆盖率以及通过依赖注入和服务容器操作管理测试生命周期的工具。

该项目包括一个引导式的命令行安装过程,用于生成标准化的测试样板和配置文件。

Features

  • PHP Testing Frameworks - Provides a comprehensive testing framework for the PHP ecosystem covering unit, integration, and end-to-end verification.
  • ORM Transaction Management - Interacts with databases via domain models and wraps test actions in roll-backable transactions.
  • Database Record Manipulation - Provides an interface to create, retrieve, and verify data in the database using table names or models.
  • Entity Property Queries - Retrieves single entities or collections from a repository using parameter arrays or complex criteria.
  • Table Data Retrieval - Fetches single values, entire rows, or lists of column values from database tables based on search criteria.
  • Record Existence Checks - Verifies the presence or absence of specific data records within database tables during test execution.
  • REST API Clients - Implements a REST API client that converts request bodies and responses to JSON for streamlined testing.
  • Acceptance Testing - Provides tools for acceptance testing by automating real user interactions via a browser.
  • Actor-Based Action Mappings - Implements actor-based action mapping to connect natural language Gherkin steps to executable PHP methods.
  • Browser Automation - Provides a full-stack framework for simulating user interactions in web browsers to verify frontend behavior.
  • Element Interaction - Provides high-level APIs to interact with web elements using CSS or XPath selectors to simulate user input.
  • User Interaction Simulation - Automates browser interactions like clicking and form filling to simulate real-world user behavior for acceptance testing.
  • Selenium WebDriver Automations - Controls real web browsers via the WebDriver protocol to simulate end-to-end user interactions.
  • WebDriver Client Libraries - Provides a client-side API library for sending commands via the WebDriver protocol to automate real browsers.
  • BDD Specification Mappings - Parses natural language Gherkin feature files to execute test scenarios aligned with business requirements.
  • Gherkin Test Specifications - Uses Gherkin language to create human-readable feature and scenario specifications for Behavior-Driven Development.
  • Database Fixture Loading - Populates databases with predefined fixture classes to establish a known starting state for tests.
  • Database State Assertions - Enables verification that application actions resulted in the correct data being stored or updated in the database.
  • Database Assertions - Verifies that a specific number of rows or column values exist within a table using comparison operators.
  • Database State Management - Resets database states between tests by reloading SQL dumps to ensure a consistent starting environment.
  • Database Seeders - Populates database connections using specified seeder classes to ensure consistent test environments.
  • Functional Web Testing - Emulates web requests and responses without a live server to validate application logic and HTML output.
  • Multi-Layer Testing Abstractions - Provides a unified interface to switch between unit, functional, and acceptance testing levels.
  • REST API Testing Tools - Ships a client for sending HTTP requests to REST APIs and validating JSON or XML responses.
  • Behavior Driven Development - Provides a framework for validating application logic through behavior specifications written in natural language.
  • End-to-End Testing - Automates complete user workflows across the application stack to verify system-wide functional correctness.
  • Gherkin-based Testing - Enables the execution of end-to-end tests using human-readable Gherkin feature files to verify application behavior.
  • Unit Testing - Provides a full-stack environment for executing unit tests to verify the smallest parts of PHP applications in isolation.
  • Step Definition Mappings - Maps natural language Gherkin steps to executable PHP methods using regular expressions or attributes.
  • Test Execution Filtering - Allows selective execution of test subsets based on suites, classes, methods, or regular expressions.
  • Kotlin Unit Testing - Allows for the validation of individual code units in isolation to ensure stability before integration.
  • User Workflow Simulation - Enables the emulation of complete user journeys by controlling browser interactions and verifying page content.
  • XML Content Validations - Includes utilities for asserting the presence of specific content and structural correctness in XML responses.
  • API Response Parsers - Ships utilities for extracting and interpreting structured data from JSON and XML API responses.
  • Database Integration Testing - Provides verification of data persistence and retrieval logic using isolated test databases in PHP.
  • Browser Session Data Management - Manages browser session data, including the setting and retrieval of cookies.
  • Response Body Filtering - Provides tools to extract specific data from API response bodies using JSONPath and XPath for verification.
  • BDD Data Tables - Integrates data tables within Gherkin steps to execute a single step with multiple data sets.
  • Test Scaffolding Generators - Provides a guided command-line process to generate standardized test boilerplates and configuration directories.
  • API Testing Clients - Ships a testing utility for sending HTTP requests to REST and SOAP services and validating their responses.
  • Service Containers - Integrates a service container to manage, retrieve, and replace factories and services for dependency control.
  • Test Environment Configurations - Allows the definition of configuration profiles to run test suites across different browsers or database environments.
  • HTTP Cookie Management - Allows the manipulation of HTTP headers and cookies to simulate specific client environments.
  • HTTP Header Manipulators - Provides mechanisms to configure, add, or remove custom HTTP headers for subsequent requests.
  • HTTP Response Validation - Validates HTTP response status codes, redirection ranges, and resulting URLs to ensure correct navigation.
  • Method Stubbing - Implements method stubbing to redefine repository behavior and return predetermined values during test execution.
  • Model-Based Record Generators - Generates randomized test records based on defined models to quickly populate complex database states.
  • API Request Authentication - Supports adding authorization headers, tokens, and signatures to API requests for secure communication testing.
  • Step Definition Contexts - Provides the ability to specify classes that act as execution contexts for BDD step definitions.
  • Container Manipulation - Interacts directly with the application's dependency injection container to override objects and control runtime behavior.
  • Dependency Injection Integrations - Injects application services and helpers into test classes to manipulate internal state and mock dependencies.
  • Test Service Injections - Uses auto-wiring to resolve and inject required objects or helper classes directly into test methods.
  • Module-Based Extensions - Extends testing capabilities through a module-based system for REST, SOAP, and database drivers.
  • Response Schema Validators - Verifies that JSON response bodies conform to specific schemas using JSONPath or type definitions.
  • Test User Authenticators - Simulates authenticated user contexts via guards and sessions to test protected application areas.
  • CI Integration Testing - Supports the execution of automated test suites within CI/CD pipelines to verify code changes.
  • Code Coverage Analysis - Tracks executed classes, methods, and lines of code to identify untested areas of the application.
  • Data-Driven Testing - Executes the same test scenarios multiple times using different data sets provided via attributes or methods.
  • Database Store Verifications - Includes tools to verify data persistence and retrieval logic across both SQL and NoSQL database technologies.
  • Database Transaction Rollback Isolations - Wraps test operations in database transactions that roll back after execution to maintain a consistent state.
  • Test Result Reporters - Generates JUnit XML and HTML documents summarizing test results and detailed execution steps.
  • Page State Assertions - Verifies the presence or absence of text, elements, and attributes within rendered output or raw source.
  • HTTP Response Assertions - Provides assertions to verify that HTTP response codes match expected values or categories.
  • Database State Management - Provides utilities for seeding fixtures and resetting database records to maintain consistent state across tests.
  • Execution Randomizers - Provides the ability to shuffle test execution order to uncover hidden state dependencies.
  • Test Skipping Mechanisms - Enables marking specific tests as skipped based on attributes or runtime conditions.
  • Test Lifecycle Hooks - Provides mechanisms for executing setup and teardown logic before and after the execution of tests and suites.
  • Test Parameterization - Implements dynamic data passing into test steps using placeholders and regular expressions.
  • Failed Test Rerunning - Enables running only the specific test cases that failed in a previous session.
  • API Request Clients - Includes clients for executing programmatic AJAX requests to verify client-side data exchange and system states.
  • Interactive Test Pausing - Allows pausing test execution at specific points to open an interactive shell for variable inspection.
  • Scenario-Based Test Authoring - Allows defining tests as a sequence of executable steps in a specific class format to enhance readability.
  • Scenario Parameterization - Executes the same BDD scenario multiple times using scenario outlines and examples tables.
  • Scenario Prerequisite Steps - Supports the definition of shared initial steps in a background section to reduce repetition across BDD scenarios.
  • Code Coverage Reportings - Produces test coverage statistics in HTML and XML formats for visualization and CI integration.
  • Test Boilerplate Generators - Generates standardized skeleton files for tests, page objects, and helpers to accelerate suite development.
  • Test Case Grouping - Allows organizing BDD features and scenarios into executable groups using labels.
  • Test Data Extraction - Pulls specific values from the current page to be used as variables in subsequent test steps.
  • Execution Log Debugging - Provides detailed internal logs and step-by-step action reports to diagnose the cause of test failures.
  • Test Dependency Managers - Supports defining execution order and prerequisite dependencies between different test suites.
  • Web Page Navigation Testing - Automates web page navigation, including opening URIs and clicking links to simulate user journeys.
  • HTTP Client Requests - Ships capabilities to execute various HTTP methods with custom parameters and file uploads for server communication testing.
  • SOAP Clients - Provides a SOAP client for executing WSDL-based XML requests and testing legacy services.
  • Testing and Quality - Full-stack testing framework.

Star 历史

codeception/codeception 的 Star 历史图表codeception/codeception 的 Star 历史图表

AI 搜索

探索更多 awesome 仓库

用简单的语言描述您的需求 —— AI 将根据相关性为您从数千个精选开源项目中进行排序。

Start searching with AI

Codeception 的开源替代方案

相似的开源项目,按与 Codeception 的功能重合度排序。
  • behat/behatBehat 的头像

    Behat/Behat

    3,959在 GitHub 上查看↗

    Behat is a behavior-driven development framework and test automation tool for PHP. It functions as a Gherkin test runner that maps natural language feature files to executable PHP methods to verify that software implementation aligns with business requirements. The framework enables the definition of application behavior using a structured, human-readable format based on user stories, supporting localized keywords for non-English speaking stakeholders. It distinguishes itself through a driver-based browser simulation layer for user interface verification and specialized integrations for the S

    PHPbddbehatbehavior-driven-development
    在 GitHub 上查看↗3,959
  • devexpress/testcafeDevExpress 的头像

    DevExpress/testcafe

    9,904在 GitHub 上查看↗

    TestCafe is a Node.js end-to-end web testing framework used to automate browser tests with JavaScript or TypeScript. It serves as a cross-browser testing tool and a command-line execution engine designed for integration into continuous integration pipelines. The framework supports behavior-driven development by mapping human-readable Gherkin syntax to automation logic. It also includes an integrated web accessibility auditor to identify violations within web applications. The toolset covers a broad range of automation capabilities, including parallel test execution across multiple browser in

    JavaScript
    在 GitHub 上查看↗9,904
  • cucumber/cucumber-jscucumber 的头像

    cucumber/cucumber-js

    5,350在 GitHub 上查看↗

    Cucumber-js is a behavior-driven development tool and acceptance test automation framework for JavaScript. It serves as a test automation engine that allows users to define system behavior using human-readable scenarios, mapping plain-text steps to executable code to verify that software conforms to business rules and acceptance criteria. The project utilizes a Gherkin-based framework to create executable system documentation in natural language. It supports multi-language localization for writing scenarios in various spoken languages and provides tools for scenario parameterization and busin

    TypeScriptcucumberjavascripttypescript
    在 GitHub 上查看↗5,350
  • codeception/codeceptjscodeception 的头像

    codeception/codeceptjs

    4,223在 GitHub 上查看↗

    CodeceptJS is a Node.js end-to-end testing framework used for writing acceptance and functional tests for web and mobile applications. It functions as an automated browser testing suite and cross-browser automation engine that allows users to simulate end-user interactions and verify page content using a JavaScript-based domain-specific language. The framework implements a behavior-driven development approach, enabling the creation of scenario-driven tests that describe application behavior in a human-readable format. It utilizes the page object model to encapsulate UI elements and logic into

    JavaScript
    在 GitHub 上查看↗4,223
查看 Codeception 的所有 30 个替代方案→

Frequently asked questions

What does codeception/codeception do?

Codeception 是一个 PHP 应用程序的全栈测试框架,为单元测试、功能测试和验收测试提供统一的界面。它作为通过 WebDriver 协议自动化真实桌面和移动浏览器的工具,并充当测试 REST 和 SOAP API 的客户端。

What are the main features of codeception/codeception?

The main features of codeception/codeception are: PHP Testing Frameworks, ORM Transaction Management, Database Record Manipulation, Entity Property Queries, Table Data Retrieval, Record Existence Checks, REST API Clients, Acceptance Testing.

What are some open-source alternatives to codeception/codeception?

Open-source alternatives to codeception/codeception include: behat/behat — Behat is a behavior-driven development framework and test automation tool for PHP. It functions as a Gherkin test… devexpress/testcafe — TestCafe is a Node.js end-to-end web testing framework used to automate browser tests with JavaScript or TypeScript.… cucumber/cucumber-js — Cucumber-js is a behavior-driven development tool and acceptance test automation framework for JavaScript. It serves… codeception/codeceptjs — CodeceptJS is a Node.js end-to-end testing framework used for writing acceptance and functional tests for web and… nightwatchjs/nightwatch — Nightwatch is a Node.js test automation tool and W3C WebDriver test framework designed for executing functional test… codeigniter4/codeigniter4 — CodeIgniter is a PHP web framework built on the Model-View-Controller pattern, designed for building full-stack web…