【有书共读】《Python测试驱动开发》读书笔记03

第一章:使用功能测试协助安装Django

在写单元测试过程中,一般是先写功能代码,然后再写单元测试用例,在编写单元测试用例的过程中,可能需要调整功能代码,从而使单元测试用例通过。但是TDD就特别要求先写测试用例,后写实现代码。即书中所说:首先要编写测试,然后运行,看是否和预期一样失败,只有失败了才能继续下一步--编写应用程序
1.1、编写功能测试用例

from selenium import webdriver

browser = webdriver.Firefox()
browser.get('https://www.baidu.com/')

assert 'Django' in browser.title

注:书中默认本地是开了服务端的,端口是8000,所以用百度主页的链接代替
运行时遇到问题如下:
1、提示未安装selenium
回顾上一章selenium安装的过程,唯一的可疑之处在于之前是安装在虚拟环境目录下,检验方法 $pip3 list
或 $sudo find / -name "selenium" -print
/Users/casablanca/.virtualenvs/superlists/lib/python3.6/site-packages/selenium
图片说明
故为了快速解决此问题,则在真实环境中同样安装selenium,确认退出虚拟环境后
$ pip3 install "django<1.12" "selenium<4" -i http://pypi.douban.com/simple/ --trusted-host pypi.douban.com

2、本地运行 $ python3 /Users/casablanca/study_py/TDD/1/functional_tests.py 时报错,错误截图如下:
图片说明
于是重新检查geckodriver的安装方式,查资料后决定再装一次
-下载 geckodriver;地址:https://github.com/mozilla/geckodriver/releases
-解压后将geckodriver 存放至 /usr/local/bin/ 路径下
-$sudo mv /Users/casablanca/Downloads/geckodriver /usr/local/bin
-配置环境变量(sudo find / -name "geckodriver" -print 找出安装路径)

3、运行后断言报错,如图:
图片说明
换一个浏览器标题包含 'Django'的即可

from selenium import webdriver

browser = webdriver.Firefox()
browser.get('https://www.runoob.com/django/django-tutorial.html')
# browser.get('https://www.baidu.com/')

assert 'Django' in browser.title
#测试##读书笔记##笔记##Python#
全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务