美文网首页
yii2 搭建测试环境

yii2 搭建测试环境

作者: 靳晓阳s | 来源:发表于2017-11-28 18:14 被阅读122次

    yii2 本身集成了Codeception 测试框架,那么我们就在 yii2 中使用 Codeception 来做测试。yii2 文档这块写的比较简陋,权当做是一个补充介绍。

    yii2 框架本身支持两种安装方式,直接下载或者通过 compose 安装,那么我们就先采用直接下载这种方式来做。

    Codeception

    Codeception 是一个全栈的 PHP 测试:

    • Acceptance Tests 验收测试
    • Functional Tests 功能测试
    • API Testing
    • Unit Tests 单元测试

    在 yii2 中搭建 Codeception

    1. 下载 yii2-basic
    2. 更改 composer 源,直接在项目根路径执行如下命令即可,详见 Packagist 镜像使用方法
    composer config repo.packagist composer https://packagist.phpcomposer.com
    
    1. 更新当前 yii2 项目中的包依赖,在项目根路径执行如下命令
    composer update
    
    1. 开始测试吧, 当然你可以把condecept加入到你的path里。
    cd basic #进入项目根目录
    ./vendor/bin/codecept build #将构建测试用例(根据cept生成tester)
    ./vendor/bin/codecept run #运行测试用例
    

    常见问题

    1. 报错如下(ubuntu16.04,php7.0)
    [Exception]
    Codeception requires CURL extension installed to make tests run          
    If you are not sure, how to install CURL, please refer to StackOverflo
    
    Notice: PHP for Apache/Nginx and CLI can have different php.ini files.   
    Please make sure that your PHP you run from console has CURL enabled.  
    

    没有curl,测试时候 curl 使用的是 php 的 cli 模式
    可以通过查看 php -m,查看有没有curl模块,然后我执行 apt-get install php-curl , 依旧报错
    因为这个把 curl 加载到了web 模式下的 php.ini 中,所以直接找到了 cli模式下的 php.ini 文件,
    添加 extension=curl.so到相应位置即可

    备注

    1. 看其它博客写的都有通过 comooser 安装 Codeception,其实没必要了,因为当前下载下来的包都是安装次依赖了的,如果是下载的话就要更新下包依赖。
    2. 由于 yii2 框架已经整合了 Codeception,所以也不需要运行..\vendor\bin\codecept bootstrap初始化命令

    相关文章

      网友评论

          本文标题:yii2 搭建测试环境

          本文链接:https://www.haomeiwen.com/subject/abuebxtx.html