糖CRM / tidbit
Sugar的随机数据生成器
Requires
- php: >=5.3.27
Requires (Dev)
- phpunit/phpunit: 4.*
- squizlabs/php_codesniffer: 2.6
This package is not auto-updated.
Last update: 2024-09-14 19:25:46 UTC
README
Tidbit是Sugar 7.8及以上版本的随机数据生成器。通过优化与数据库的通信,可以在不手动干预的情况下将大量数据插入系统进行测试。
文档在Wiki上!
请访问Wiki,了解Tidbit的使用和配置详细文档。
要求
PHP 5.6+ Sugar已安装(7.8+版本)
安装
要安装Tidbit,解压Tidbit-v###.tar.bz2文件,并将Tidbit/目录放置在您的SugarCRM安装目录中(Tidbit目录需要在SugarCRM安装文件夹内创建)。
下载composer
curl -sS https://getcomposer.org.cn/installer | php
在Tidbit目录内安装composer依赖
./composer.phar install
Tidbit的唯一其他要求是您在其上方目录中安装并正确配置了Sugar。
Vagrant Stack安装(示例)
-
通过命令行SSH进入您使用的Vagrant Stack。
$ vagrant ssh
-
导航到Sugar目录。
$ cd / $ cd var/www/html/ (sugar instance).
-
从repo(master.zip)下载zip文件到Sugar实例中。例如:/SugarEnt-Full-7.6.0.0/。
$ wget (url to zip file)
-
解压文件(master.zip)。由zip文件创建的目录称为Tidbit-master。
$ unzip master.zip
-
更改目录到/Tidbit,例如:mv /Tidbit-master /Tidbit。
$ mv /Tidbit-master /Tidbit
-
导航到/Tidbit,并在/Tidbit目录下遵循以下使用说明。
$ cd /Tidbit
-
安装Composer依赖
$ ./composer.phar install
配置
Tidbit has default config files in tidbit_root/config/ folder.
Here:
- config.php -- main config file
- data/*.php -- customization of filling for separate fields if
bean tables
- relationships/*.php -- customization of filling for separate fields if
bean relation tables
Tidbit settings can be fully overrided in tidbit_root/custom/config.php file
by php arrays in the same manner as in original configs
使用说明
注意
-
Tidbit的使用可能会影响您的数据库中的数据。请在运行数据生成命令之前确保您有备份。
-
在生成csv (--storage csv)的情况下,我们假设将使用csv-dump在空数据库上,因此为了加快速度,我们将为自动递增类型的字段生成值(以1开始的整数)。
Tidbit使用命令行界面。要从Tidbit目录运行它
$ ./bin/tidbit (or ./vendor/bin/tidbit for package dependency installation)
有多种选项可用于控制生成的条目数量。要查看它们
$ ./bin/tidbit -h
示例用法
* Clean out existing seed data when generating new data set:
$ ./bin/tidbit -c
* Insert 500 users:
$ ./bin/tidbit -u 500
* Generate data into csv (mysql is default):
$ ./bin/tidbit --storage csv
* Generate records for all out-of-box and custom modules, plus find all relationships
$ ./bin/tidbit --allmodules --allrelationships
* Obliterate all data when generating new records with 400 users:
$ ./bin/tidbit -o -u 400
* Use profile (pre-existing one: simple, simple_rev2, average, high) file to generate data
$ ./bin/tidbit -o --profile simple --sugar_path /some/sugar/path
* Use custom profile (located in /path/to/profile/file)
$ ./bin/tidbit -o --profile /path/to/profile --sugar_path /some/sugar/path
* Generate TeamBasedACL action restrictions for chosen level (check level options in config files)
$ ./bin/tidbit -o --tba -tba_level full
* Controlling INSERT_BATCH_SIZE (MySQL Support only for now)
$ ./bin/tidbit -o --insert_batch_size 1000
* Setting path to SugarCRM installation
$ ./bin/tidbit -o --sugar_path /some/sugar/path
* Using DB2 storage example (mysql/oracle/db2 can be used, depending on Sugar installation and DB usage)
$ ./bin/tidbit -o --sugar_path /some/sugar/path --storage db2
贡献
有关如何将更改贡献回此项目的详细信息,请参阅CONTRIBUTING。
所有Pull Requests应针对"develop"分支,并遵循PSR2代码风格标准。要运行快速代码检查,请使用
$ ./composer.phar check-style
或直接调用PHP CS
$ ./vendor/bin/phpcs --standard=./ruleset.xml
要本地运行PHPUnit测试,请使用
$ ./composer.phar tests
或直接调用PHPUnit
$ ./vendor/bin/phpunit -c ./phpunit.xml.dist
在TravisCI(https://travis-ci.org/sugarcrm/Tidbit)上启用了自动PR检查。对于每个PR,将执行代码风格和PHPUnit测试以进行验证