Yii2 使用 faker 生成假数据
测试过程中有时候需要生成大量的假数据,faker 是一个生成假数据的类库,可以生成姓名,电话,IP地址,密码,ISBN等等你能想到的或者你想不到的各种类型的假数据。
Yii2.0已经集成该类库,不用再下载了。
以Yii2.0 Basic版为例
1. config\console.php 中添加一条配置信息
'controllerMap' => [
'fixture' => [
'class' => 'yii\faker\FixtureController',
],
],
注意顶部,定义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 \Faker\Generator
* @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

生成的假数据位于tests\unit\fixtures\data\users.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.',
],
];
Yii2 使用 faker 生成假数据的更多相关文章
- Yii2 使用 faker 生成假数据(转)
		测试过程中有时候需要生成大量的假数据,faker 是一个生成假数据的类库,可以生成姓名,电话,IP地址,密码,ISBN等等你能想到的或者你想不到的各种类型的假数据. Yii2.0已经集成该类库,不用再 ... 
- Flask实战-留言板-使用Faker生成虚拟数据
		使用Faker生成虚拟数据 创建虚拟数据是编写Web程序时的常见需求.在简单的场景下,我们可以手动创建一些虚拟数据,但更方便的选择是使用第三方库实现.流行的python虚拟数据生成工具有Mimesis ... 
- mock.js模拟生成假数据
		mock使用方法很简单, 下面是简单的用法, 详细的用法可以看官方文档, 写的很清楚, 下面的代码直接拷贝到本地html文件, 双击打开即可生成你想要的数据 <!DOCTYPE html> ... 
- laravel Faker-1.faker假数据
		1. 安装 composer require fzaninotto/faker --dev 2. 创建 migrations 参考:laravel文档 3. 定义ModelFactory 说明: 默认 ... 
- faker生成器生成虚拟数据的Python模块
		前言 本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. 作者:行哥 今天给大家介绍一个Faker模块,一款基于Python的测试数 ... 
- Python_faker (伪装者)创建假数据
		faker (伪装者)创建假数据 工作中,有时候我们需要伪造一些假数据,如何使用 Python 伪造这些看起来一点也不假的假数据呢? Python 有一个包叫 Faker,使用它可以轻易地伪造姓名.地 ... 
- Faker——生成测试数据的PHP类库
		工作上用的是TP框架,每次测试功能的时候都要手动添加测试数据,词穷起名总是起一些test1.test2这种low到爆炸的用户名,这让我很难受.稍微翻阅了一些资料,发现laravel有一个生成测试数据的 ... 
- 如何在vue-cli项目中结合mockjs模拟假数据
		1.前言 在如今前后端分离的开发方式已被广泛采用的今天,前端同学和后端同学各自独立开发,后端提供数据接口,前端调用接口获取数据渲染页面.但是在实际开发中,后端开发由于逻辑相对复杂接口迟迟提供不到位,而 ... 
- flask实战-个人博客-数据库-生成虚拟数据 --
		3.生成虚拟数据 为了方便编写程序前台和后台功能,我们在创建数据库模型后就编写生成虚拟数据的函数. 1)管理员 用于生成虚拟管理员信息的fake_admin()函数如下所示: personalBlog ... 
随机推荐
- 创建 JavaScript 对象
			http://www.w3school.com.cn/js/js_objects.asp 创建 JavaScript 对象 通过 JavaScript,您能够定义并创建自己的对象. 创建新对象有两种不 ... 
- UVa 10735 - Euler Circuit(最大流 + 欧拉回路)
			链接: https://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem& ... 
- nginx中文文档
			http://www.nginx.cn/doc/ LNMP :https://lnmp.org/faq/lnmp-vhost-add-howto.html 配置详解 配置详解2 
- oracle11g之管理oracle数据库笔记(理论基础知识)
			第三章 管理oracle数据库 1.启动数据库步骤;(创建启动实例--> ... 
- DPDK中使用VFIO的配置
			VFIO VFIO是一个可以安全地把设备I/O.中断.DMA等暴露到用户空间(userspace),从而可以在用户空间完成设备驱动的框架.用户空间直接设备访问,虚拟机设备分配可以获得更高的IO性能. ... 
- DPDK运行出现EAL Error reading from file descriptor 23  Input output error
			原因 dpdk不支持该网卡导致,需要修改一行代码,跳过dpdk pci 检查. 解决方法 修改lib/librte_eal/linuxapp/igb_uio/igb_uio.c 将文件中该行修改 pc ... 
- Stacktrace: org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:5
			jsp页面出现如下异常: Stacktrace: at org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServle ... 
- Java多线程入门知识点梳理
			前言 在多核时代,高并发时代,对系统并行处理能力有很高要求.多线程就是这个时代最好的产物.通过使用多线程可以增强系统并行处理能力,提高CPU资源的有效利用:从而提高系统的处理能力.常见应用场景如:多窗 ... 
- 记一次MacBook Pro无法连接wifi网络修复
			解决方案: https://blog.csdn.net/kimbing/article/details/79321001 真的哭了 原因是插入了我的USB3.0拓展坞影响了wifi信号 不知道原理是啥 ... 
- C++11 initializer_list 和 Range-based for loop 学习理解
			win10 + vs2017 源码如下: int main() { vector< int > numbers = { 1, 2, 3, 4, 5 }; for (auto num : n ... 
