写在前面
Python新手小白,刚学习了Django的基础知识,准备系统性的学习TDD,也欢迎大家多多交流。
参考书目:O’REILLY Python测试驱动开发[第二版]
码云地址
环境准备
- Firefox浏览器(Selenium能用各种浏览器,但是作者选了一个跨平台的,我也就用了);
- Python 3.8;
- Django 3.1.1;
- Selenium;
- Geckodriver:通过Selenium远程控制浏览器的驱动,请自行百度;
git下载地址
使用工具
- PyCharm
使用功能测试协助安装Django
- 遵从测试山羊的教诲,没有测试什么也别做
在Python测试社区中,测试山隐是TDD的非官方吉详物。这里要改变原有的思维:下载、安装、配置、执行脚本……等。
希望从这里开始,所有的开发动作,要像山羊一样专注,咩咩地叫着:“先测试,先测试!” - 让Django运行起来
这点在PyCharm中不是问题,一般来说新建项目的时候,都安装好了环境,但是写下书上的方式:
下面是第一个功能测试,在项目运行的地方加上这个功能测试文件
# funcional_test.py
from selenium import webdriver
browser = webdriver.Firefox()
browser.get('http://localhost:8000')
assert 'Djgnao' in browser.tittle
运行文件:
python functional_test.py
这时候肯定会得到一个错误的结果,现在开始第一步,创建项目:[TDDDjangoDemo]并运行
$ django-admin.py startproject TDDDjangoDemo
$ python manage.py runserver
这时候让原来的窗口继续运行,再开一个新的窗口准备执行我们刚才的功能测试文件:funcional)tests.py
这时候要注意是否已经启动虚拟环境,如果没有,先启动再执行:
python funcional_tests.py
如果一切顺利,这时候应该可以成功运行网站了,准备提交到git上完成我们TDD的第一步了。