Download the PHP package xepozz/test-it without Composer
On this page you can find all versions of the php package xepozz/test-it. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Informations about the package test-it
Test it!
A tool for generating files with tests cases based on class methods signatures.
Installation
Usage
Run the script from the console and pass source
directory and target
directory by your needs.
Default values are src
and tests
respectively.
Description
The package reads all .php
files from the source
directory, analyses it and
creates files mirrored by the relative path to source
directory in target
directory.
The tool respects parameters types and methods return value and generates all possible test cases.
Example
Input:
Output:
As we can see it generates a dataProvider
related to a function, evaluates return values and saves it to the data provider function.
Config file
Create a file with name test-it.php
in project root if you need to configure generation process and configure the config as you wish.
Here is an example of possible options to configure:
Passing command arguments does not make any changes the config
Help
Call the script with the flag --help
to see all the possible options.
Additional documentation
- Test case evaluation
Roadmap
- [ ] Mock classes creation
- [ ] Support multiple test methods names strategies (
test_function_name
andtestFunctionName
) - [ ] Test constant expression when a method always returns the same result
- [ ] Add benchmarks
- [ ] Add static analyzer
- [ ] Add exclusion list
- [X] Paths (directories, files)
- [X] Classes
- [ ] Inheritance tree (interfaces, parent classes)
- [ ] Override config with command arguments
- [ ] Add Codeception support
Restrictions
It doesn't work with not namespaced classes.
It has only one test method name generation strategy. See the roadmap.
All versions of test-it with dependencies
nikic/php-parser Version ^4.15
psr/container Version ^2.0
psr/log Version ^3.0
symfony/console Version ^6.2
symfony/finder Version ^5|^6
yiisoft/di Version ^1.2
yiisoft/var-dumper Version ^1.5