美文网首页
Yii2的Codeception测试-3覆盖率等

Yii2的Codeception测试-3覆盖率等

作者: biaoqianwo | 来源:发表于2018-03-01 15:30 被阅读482次

这是一个系列文章,分3部分:
1、准备工作--Yii2高级模板的安装,以及编写一个类(方法)和一个model的RETful
2、测试工作--单元测试和API(REST规范的)测试
3、力争上游--覆盖率、基础概念、引用文献等

这是第三部分

选择 Codeception的理由:

1、Yii2官方推荐和支持。
2、codeception的强大。

Codeception is a modern full-stack testing framework for PHP. Inspired by BDD, it provides an absolutely new way of writing acceptance, functional and even unit tests. Powered by PHPUnit.

覆盖率

需要安装xdebug,使用php -i | grep xdebug查看是否成功安装xdebug。
如果没有输出,需要执行sudo apt-get update;sudo apt-get install php-xdebug安装。
需要在子应用的codeception.yml,增加类似下面内容:

coverage:
   enabled: true
   whitelist:
        include:
            - models/*
            - helpers/*

执行./vendor/bin/codecept run --coverage-html
输出到 console/runtime/logs(或者tests/_output/coverage),浏览器打开里面的index.html即可
NOTE:vendor/bin/codecept run --coverage-html是整个项目都进行测试,因为执行的测试较多,速度会慢不少。
常常在run后面加上-c frontend|backend|blog|common
项目根目录下的codeception.yml中配置的paths的log节点的值(或者子应用下的codeception.yml中配置的paths的output节点的值)。

一些重要概念

Actors 演员 身份

We have a UnitTester, who executes functions and tests the code.
We also have a FunctionalTester, a qualified tester, who tests the application as a whole, with knowledge of its internals.
Lastly we have an AcceptanceTester, a user who works with our application through an interface that we provide.
其实还有一个ApiTester,用于接口测试:REST,SOAP等。

常用的测试命令:

codecept build
codecept run
codecept run -c frontend|backend|common
codecept run unit|funtional|api|acceptance
codecept run tests/acceptance/OneFileCept.php
codecept run tests/acceptance/OneFileCept.php:oneMethod
codecept run tests/acceptance/directory
codecept run tests/acceptance/directory:^someMethod
codecept run --steps --xml --htmlcodecept run  --coverage-html

除了run,generate也很常用,使用codecept -h 查看帮助文档学习。

参考:

上一篇:测试工作

相关文章

  • yii2 搭建测试环境

    yii2 本身集成了Codeception 测试框架,那么我们就在 yii2 中使用 Codeception 来做...

  • Yii2的Codeception测试-3覆盖率等

    这是一个系列文章,分3部分:1、准备工作--Yii2高级模板的安装,以及编写一个类(方法)和一个model的RET...

  • codeception在YII2中的使用

    codeception是一款PHP的行为测试工具,能自动化进行单元测试、功能测试、验收测试等。 官网:http:/...

  • Yii2的Codeception测试-2测试工作

    这是一个系列文章,分3部分:1、准备工作--Yii2高级模板的安装,以及编写一个类(方法)和一个model的RET...

  • Yii2 使用 codeception

    测试过程 1、保证项目composer.json的require-dev中含有 如果没有,请添加然后执行compo...

  • codeception 接口级测试 (二)-编写测试代码

    codeception 接口级测试 (二)-编写测试代码 api suit 配置 测试文件格式 codecepti...

  • 03_测试覆盖率

    测试覆盖率 学习目标 掌握各种测试覆盖率的含义 能计算各种测试覆盖率 理解覆盖率在白盒测试中所起的作用 覆盖率概念...

  • Instrumentation测试进阶

    本篇主要讲解通过Instrumentation如何测试Android组件, 如何生成测试覆盖率报告等. 测试And...

  • Yii2下的Codeception测试-1准备工作

    这是一个系列文章,分3部分:1、准备工作--Yii2高级模板的安装,以及编写一个RESTful2、测试工作--单元...

  • jacoco测试覆盖率

    测试覆盖率 测试覆盖率是对测试完全程度的评测。测试覆盖率是由测试需求和测试用例的覆盖或已执行代码的覆盖的表示结果。...

网友评论

      本文标题:Yii2的Codeception测试-3覆盖率等

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