如何编写测试
DTCLOUD 的后端测试使用的是unittest,只需要在模块文件下增加一个test的目录即可,注意该test目录不需要被模块文件里的_init_.py文件导入,然后就是使unittest的框架方式写测试用例。
启动单元测试
首先建立一个新的数据库并且选择加载演示数据(demo data),然后重新使用命令行启动dtcloud。
python dtcloud-bin --config=.dtcloud.conf --test-enable -d test_db -i test_model --log-level test --stop-after-init
- 其中config中只设置了些基本的连接数据库及端口号的配置
- –test-enable 为开启单元测试
- -d 指定刚刚创建的数据库
- -i 为安装模块,在开启测试之后安装模块便会对对模块进行单元测试,第二次测试可以改为-u(升级模块)
- –log-level test 设置日志级别为test的
- – stop-after-init 测试完成后自动结束程序
测试代码覆盖率
首先安装coverage模块
pip install coverage
使用coverage运行dtcloud
coverage run dtcloud-bin --config=.dtcloud.conf --test-enable -d test_db -i test_model --log-level test --stop-after-init
测试完成后再执行即可看到代码覆盖率情况
coverage report -m