测试开发之Django——No1.介绍以及引申
前言
> 测试行业发展飞速,自动化测试兴起,由此对测试人员的要求与日俱增。随时而来的,就是职能的增加。
> 首先需要学习的,就是自动化测试。而由自动化测试引申而来的,就是另外几个新增的岗位:自动化测试工程师、测试开发工程师、测试架构工程师。作为测试人员,学习的内容也越来越多
> 除了大家需要学会编程能力外,还需要具备的一点,就是对测试平台的开发或维护,这里有些同学就要不明白了。既然有自动化测试工程师,为什么很多公司都不会去开展自动化测试。
> 原因很简单,维护成本太大。
> 单个人或者几个人去写自动化测试的脚本,耗时不说,还要公司有其他同事来做正常的测试工作。如果有人离职,还要去寻找新人补进来,熟悉脚本,熟悉业务等,耗时耗力。
> 这个时候,如果有一个测试平台来管理自动化测试的相关内容,是不是就会不一样了呢?
> 答案是想当然的。开发完成之后,只需要一两个人来维护,所有人都可以使用自动化来辅助工作,可以提升很多工作效率。
> 所以才有了测试开发等岗位。
> 我这里选择的编程语言是python,web框架为django,下面让我为大家介绍一下django。
Django
Django是一个开放源码的Web应用框架,由Python写成。主要采用的是MTV的框架模式,即模型(Model),模板(Template),视图(Views):
1、模型:数据存储层,处理与数据相关的所有事物。
2、视图:表现层,处理与表现相关的决定。
3、模板:业务逻辑层,存取模型以及调用恰当的模板,处理相关逻辑等。
它主要的目的,就是简便、快速的开发数据库驱动的网站。它很多的组件都可以很方便的以插件的形式服务于整个框架,Django还有很多功能强大的第三方插件,很方便开发自己的工具包,使得它有很强的扩展性,它还强调了快速开发和DRY(Do Not Repeat Yourself)原则。
Django基于MVT的设计十分的优美:
- 对象关系映射(Object Relational Mapping,ORM):通过定义映射来构建数据模型,讲模型和关系数据库连接起来,使用ORM框架内置的数据库接口可实现复杂的数据操作。
- URL设计:开发者可任意设计的URL(网站地址),而且还支持使用正则表达式设计。
- 模板系统:提供可扩展的模板语言,模板之间具有可继承性。
- 表单处理:可以生成各种表单模型,而且表单具有有效性检验功能。
- Cache系统:完善的缓存系统,可支持多种缓存方式。
- 用户管理系统:提供用户认证、权限设置和用户组的功能,功能扩展性强。
- 国际化:内置国际化系统,方便开发出多种语言的网站。
- admin管理系统:内置admin管理系统,系统扩展性强。
Python版本以及Django版本选择
Django2.0以上版本,支持Python3.4以上的版本,而取消对Python2的支持。
而Django 1.11是支持Python2.7的最后版本。
详情可以加入黎梦课堂交流群来提问或者探讨,欢迎各种有志之士加入我们。每周末也会有腾讯课堂的公开课来讲解一些知识。
QQ群号:823625453
测试开发之Django——No1.介绍以及引申的更多相关文章
- 测试开发之Django——No7.Django模板中的过滤器
1.add 将参数添加到值. 例如: {{ value|add:"2" }} 如果value是4,那么输出将是6. 此过滤器将首先尝试将两个值强制转换为整数.如果失败,它将尝试将值 ...
- 测试开发之Django——No6.Django模板中的标签语言
模板中的标签语言 1.if/else {% if %} 标签检查(evaluate)一个变量,如果这个变量为真(即:变量存在,非空,不是布尔值假),系统会显示在{% if %} 和 {% endi ...
- 测试开发之Django——No4.Django中前端框架的配置与添加
我们在开发一个web项目的时候,虽然我们不是专业开发,但是我们也想要做出来一个美美的前端页面. 这种时候,百度上铺天盖地的前端框架就是我们的最好选择了. 当然,在网上直接下载的框架,我们是不能直接用的 ...
- 测试开发之Django——No3.Django中的试图(views)
说到views,我们先来说django中执行的一个顺序. 我们打开一个django中配置的页面,之后的执行是有这么几个步骤: 1.系统配置的urls中寻找是否配置了这个地址: 2.如果已经配置了这个地 ...
- 测试开发之Django——No8.Django中的视图与URL配置
在Django中,页面内容是靠views function(视图函数)来产生,URL定义在URLconf中. 这是一个纯净项目的url配置文件,他存在的目录,是与setting文件在同一个目录中. u ...
- 测试开发之Django——No5.Django项目的部署(CentOS7+nginx)
配置环境:CentOS7 1.安装python3环境 默认的CentOS7系统中,会安装python2.7的版本,由于Django2.0并不支持python2.7的版本,所以我们需要自己在系统中安装p ...
- 测试开发之Django——No2.Django的安装以及项目创建
开发平台:Mac Python版本:3.7 Django版本:2.0.5 一.Django的安装 1.pip安装 输入命令pip install Django==2.0.5 说明:不指定版本,则安装的 ...
- iOS-iPad开发之popoverController使用介绍
iOS-iPad开发之popoverController使用介绍 iOS开发UI篇-popoverController使用注意 iOS SDK:自定义Popover(弹出窗口) 实现的简单例子: // ...
- iOS-iPad开发之SplitViewController简单介绍
iOS-iPad开发之SplitViewController简单介绍 SplitViewController图形化创建 SplitViewController可以并列显示两个view,适用于基于nav ...
随机推荐
- c# 行转列
将下面表(1)格式的数据转换为表(2)格式的数据.很明显,这是一个行转列的要求,本想在数据库中行转列,因为在数据库中行转列是比较简单的,方法可以参考本站SQLServer中(行列转换)行转列及列转行且 ...
- How do you add? UVA - 10943(组合数的隔板法!!)
题意: 把K个不超过N的非负整数加起来,使它们的和为N,有多少种方法? 隔板法...不会的可以买一本高中数学知识清单...给高中班主任打个广告.... 隔板法分两种...一种是不存在空集 = C(n- ...
- 【转】安全加密(一):这些MCU加密方法你都知道吗?
本文导读 随着物联网和边缘计算的出现,五花八门的MCU也被应用其中,如何保证我们的程序安全和知识产权不受侵犯呢,本文我们将对主流MCU的程序加密进行讲解,希望能够帮助你选择最适合自己应用的微处理器. ...
- Kruskal重构树学习笔记+BZOJ3732 Network
今天学了Kruskal重构树,似乎很有意思的样子~ 先看题面: BZOJ 题目大意:$n$ 个点 $m$ 条无向边的图,$k$ 个询问,每次询问从 $u$ 到 $v$ 的所有路径中,最长的边的最小值. ...
- bzoj5164: 餐厅计划问题(三分+贪心)
网络流经典题里餐巾计划的加强版...天数变成了$10^5$,那就不能用费用流做了... 考虑费用流的时候,单位费用随流量的增加而减少,也就是说费用其实是个单峰(下凸)函数. 那么可以三分要买的餐巾个数 ...
- activiti复盘重推的一种简单实现方式:
activiti复盘重推的一种简单实现方式: 设置流程的每一步让用户选择,比如一共有6步完成,用户选择从第4步开始复盘重推,那么把原来的推演oldId和4传到后台, 首先,后台生成一个新的推演id n ...
- C#访问和操作MYSQL数据库
这里介绍下比较简单的方式,引用MySql.Data.dll然后添加一个MySqlHelper类来对MySql数据库进行访问和操作. 1.将MySql.Data.dll引用到你的项目中 下载地址:MyS ...
- 形参与实参的区别---java基础
1.形参变量只有在被调用时才分配内存单元,在调用结束时,即刻释放所分配的内存单元.因此,形参只在函数内部有效.函数调用结束返回主调用函数后则不能再使用该形参变量.2.实参可以是常量.变量.表达式.函数 ...
- element-ui合并行:span-method
objectSpanMethod({ row, column, rowIndex, columnIndex }) { if (columnIndex === 0) { if (rowIndex % 2 ...
- SQL记录-PLSQL过程
PL/SQL过程 子程序是一个程序单元/模块执行特定的任务.这些子程序被组合以形成更大的程序.这基本上是被称为“模块化设计”.子程序可以调用由另一个子程序或程序被称为调用程序. 子程序可以创建: ...