一点设计 - yann学长的运维开发指南38

in #devops8 years ago

大纲

第6章的内容还是比较激动的,在这个章节里会完成一个可用的网站
加上域名就可以对外展示的那种
http://www.iamyann.com/images/0614/20180614205540.png
(html comment removed: more)

内容介绍

  • 下面来看今天的内容
  • 具体内容如下:
  • 访问方法
  • 新建多用户测试
  • 补完测试脚本
  • 测试效果
  • 构造唯一URL测试
  • 尝试修改视图

一点点设计

访问方法

今天来说一点点设计,涉及备忘录的访问方式,新建条目和文件的方式

作为一个web应用,所谓的方法也是通过web实现的

/lists/id/
表示清单各自独立的URL

/lists/new
表示新建清单条目

/lists/id/add_item
在已有的清单上建立文章

新建多用户测试

老规矩, 有新的需求先把相关的测试写出来

vi functional_tests/tests.py

http://www.iamyann.com/images/0614/20180614201357.png

增加了一个多用户测试,使用了 self.assertRegex() 函数,回头再讲解

补完测试脚本

继续补充其他测试语句
http://www.iamyann.com/images/0614/20180614202148.png

内容如下:
新用户,确认没有之前提交的条目 Buy peacock feathers和make a fly

录入Buy milk 条目,获取唯一URL

再次确认没有之前提交的条目

测试效果

运行一下功能测试,发现一个成功,一个失败

python manage.py test functional_tests
.F
'/lists/.+' not found in
'http://localhost:8081/'

看来我们的测试方法还需要修正

构造唯一URL测试

根据报错提示,没有唯一的URL

鉴于相关的代码还没写,我们可以想办法构造一个,先增加点测试

vi lists/tests.py
self.assertEqual(response.status_code, 302)
self.assertEqual(response['location'], '/lists/the-only-list-in-the-world/')
python manage.py test lists

AssertionError: '/' != '/lists/the-only-list-in-the-world/'

没有这个网址

这是我们最早设置的提示语句,说明功能测试已经跑到最后了,运行测试成功

尝试修改视图

修改下视图文件,看能不能暂时构造出来

vi lists/views.py

http://www.iamyann.com/images/0614/20180614204648.png

再次测试一下

python manage.py test lists

http://www.iamyann.com/images/0614/20180614204855.png

测试依然无法通过, 只有老老实实写语句了,下次会为其添加唯一URL

预告

时间过的飞快,下节再见

http://hero.iamyann.com/blog_webchat.jpg