zoukankan      html  css  js  c++  java
  • Yii2 使用 faker 生成假数据

    测试过程中有时候需要生成大量的假数据,faker 是一个生成假数据的类库,可以生成姓名,电话,IP地址,密码,ISBN等等你能想到的或者你想不到的各种类型的假数据。

    Yii2.0已经集成该类库,不用再下载了。

    以Yii2.0 Basic版为例

    1. configconsole.php 中添加一条配置信息

    'controllerMap' => [
        'fixture' => [
            'class' => 'yiifakerFixtureController',
        ],
    ],

    注意顶部,定义test测试目录的位置的代码。

    Yii::setAlias('@tests', dirname(__DIR__) . '/tests');

    2. 创建生成假信息的模版文件

    在test目录下面依次新建unit/templates/fixtures目录

    然后在fixtures目录下新建users.php文件。内容如下:

    // users.php file under template path (by default @tests/unit/templates/fixtures)
    /**
     * @var $faker FakerGenerator
     * @var $index integer
     */
    return [
        'name' => $faker->firstName,
        'phone' => $faker->phoneNumber,
        'city' => $faker->city,
        'password' => Yii::$app->getSecurity()->generatePasswordHash('password_' . $index),
        'auth_key' => Yii::$app->getSecurity()->generateRandomString(),
        'intro' => $faker->sentence(7, true),  // generate a sentence with 7 words
    ];

    3. 打开命令行,执行生成假记录命令 

    php yii fixture/generate users

    生成的假数据位于testsunitfixturesdatausers.php

    打开如下,有了假数据内容,剩下的就好办了 :)

    <?php
    
    return [
        [
            'name' => 'Dawn',
            'phone' => '1-931-080-3527x751',
            'city' => 'Schinnerberg',
            'password' => '$2y$13$ax7ubTMdQoUBkAdQfgW38uPD3Lp9C/X7XfdfSMFl8L1N90PpdXQoK',
            'auth_key' => 'zmk_N4ZX_kOgu72iiWvPFZDUHEhQGYsg',
            'intro' => 'Adipisci nostrum et autem molestias odio.',
        ],
        [
            'name' => 'Hubert',
            'phone' => '1-618-327-3265x917',
            'city' => 'Auerstad',
            'password' => '$2y$13$gSjD/GJZiuPQdjB5FXyf0.fZCD9Jm6KquYRFyoaU6fgT3HHHiRa/q',
            'auth_key' => 'zAVYEriQJJF16DtwwzesVM84gA1UhxFK',
            'intro' => 'Maiores voluptas possimus nihil nesciunt qui commodi maiores qui.',
        ],
    ];
  • 相关阅读:
    Hive安装教程
    HBase安装教程
    Hadoop集群搭建
    Redis集群安装详细步骤
    Python绘图工具turtle库的使用
    python程序语法元素分析
    Selenium请求库爬取京东商品实例
    python爬虫入门
    python入门
    pytest fixture场景一:参数传入
  • 原文地址:https://www.cnblogs.com/mafeifan/p/4054816.html
Copyright © 2011-2022 走看看