想做任何事情之前,先测试…

很久没更新博客了…近期一直在看书。

这里总结一些书上的知识吧。

用Python Selenium 的 webdriver 打开浏览器,打开期望的网页。

 

Django的一些命令

创建项目: Django-admin.py startproject superlists(项目名)

运行服务器: python3(命令) manage.py runserver

创建应用: python3 manage.py startapp lists

 

隐式等待:

browser = webdriver.Chrome()

browser.implicitly_wait(3)

 

功能测试:从用户的角度描述功能该如何运行

python3 functional_tests.py

python3 manage.py test functional

 

单元测试:从程序员角度从内部测试应用

python3 manage.py test lists

 

MVC模式

MVC使用一种业务逻辑,数据,界面显示分离的方法组织代码。将业务逻辑聚集到一个部件内,在改进和个性化定制见面及用户交互的同时,不需要重新编写业务逻辑。

MVC模式同时提供了对HTML、CSS、JS的完全控制。

  • Model(模型)是应用程序中用于处理程序数据逻辑的部分。通常模型对象负责在数据库中存取数据
  • View(视图)是应用程序中处理数据显示的部分。通常视图是依据模型数据创建的。
  • Controller(控制器)是应用程序中处理用户交互部分,通常控制器负责从视图读取数据,控制用户输入,并向模型发送数据。

MVC的分层有助于管理复杂的应用程序。可以在一个时间内专门关注一些方面,比如可以不依赖业务逻辑的情况下专注于视图设计。同时也让应用程序的测试更加容易。

同时也简化了分组开发,不同的开发人员可以同时开发视图、控制器逻辑和业务逻辑。

 

在Django中,模型确实是有的,但是视图更像是控制器,模板才是真正的视图。

 

Django的工作流程大致如下:

  1. 针对某个URL的HTTP请求进入了
  2. Django使用URL解析的规则决定由哪个视图处理这个请求
  3. 选中的视图处理请求然后返回HTTP响应

 

在使用Form表单保存用户输入的时候,记得加上令牌 {% csrf_token %}

 

向浏览器输入 inputbox.send_keys(…)

 

数据库每添加一个新字段,就要创建一个迁移.

数据库迁移命令: python3 manage.py makemigrations

用迁移来创建/更新数据库 python3 manage.py migrate

 

回归的概念:新添加的代码破坏了应用原本可以正常使用的功能

 

tdd%e6%b5%81%e7%a8%8b%e5%9b%be

 

还有一些断言

assertIn

assertNotIn

assertEqual

assertTrue

assertRegex

assertContains

assertNotContains

assertRedirects

 

【Web】先测试——Python Web开发前六章总结
Tagged on:     
0 0 vote
Article Rating
订阅
提醒
0 评论
Inline Feedbacks
View all comments