前言

> 测试行业发展飞速,自动化测试兴起,由此对测试人员的要求与日俱增。随时而来的,就是职能的增加。

> 首先需要学习的,就是自动化测试。而由自动化测试引申而来的,就是另外几个新增的岗位:自动化测试工程师、测试开发工程师、测试架构工程师。作为测试人员,学习的内容也越来越多

> 除了大家需要学会编程能力外,还需要具备的一点,就是对测试平台的开发或维护,这里有些同学就要不明白了。既然有自动化测试工程师,为什么很多公司都不会去开展自动化测试。

> 原因很简单,维护成本太大。

> 单个人或者几个人去写自动化测试的脚本,耗时不说,还要公司有其他同事来做正常的测试工作。如果有人离职,还要去寻找新人补进来,熟悉脚本,熟悉业务等,耗时耗力。

> 这个时候,如果有一个测试平台来管理自动化测试的相关内容,是不是就会不一样了呢?

> 答案是想当然的。开发完成之后,只需要一两个人来维护,所有人都可以使用自动化来辅助工作,可以提升很多工作效率。

> 所以才有了测试开发等岗位。

> 我这里选择的编程语言是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.介绍以及引申的更多相关文章

  1. 测试开发之Django——No7.Django模板中的过滤器

    1.add 将参数添加到值. 例如: {{ value|add:"2" }} 如果value是4,那么输出将是6. 此过滤器将首先尝试将两个值强制转换为整数.如果失败,它将尝试将值 ...

  2. 测试开发之Django——No6.Django模板中的标签语言

    模板中的标签语言 1.if/else {% if  %} 标签检查(evaluate)一个变量,如果这个变量为真(即:变量存在,非空,不是布尔值假),系统会显示在{% if  %} 和 {% endi ...

  3. 测试开发之Django——No4.Django中前端框架的配置与添加

    我们在开发一个web项目的时候,虽然我们不是专业开发,但是我们也想要做出来一个美美的前端页面. 这种时候,百度上铺天盖地的前端框架就是我们的最好选择了. 当然,在网上直接下载的框架,我们是不能直接用的 ...

  4. 测试开发之Django——No3.Django中的试图(views)

    说到views,我们先来说django中执行的一个顺序. 我们打开一个django中配置的页面,之后的执行是有这么几个步骤: 1.系统配置的urls中寻找是否配置了这个地址: 2.如果已经配置了这个地 ...

  5. 测试开发之Django——No8.Django中的视图与URL配置

    在Django中,页面内容是靠views function(视图函数)来产生,URL定义在URLconf中. 这是一个纯净项目的url配置文件,他存在的目录,是与setting文件在同一个目录中. u ...

  6. 测试开发之Django——No5.Django项目的部署(CentOS7+nginx)

    配置环境:CentOS7 1.安装python3环境 默认的CentOS7系统中,会安装python2.7的版本,由于Django2.0并不支持python2.7的版本,所以我们需要自己在系统中安装p ...

  7. 测试开发之Django——No2.Django的安装以及项目创建

    开发平台:Mac Python版本:3.7 Django版本:2.0.5 一.Django的安装 1.pip安装 输入命令pip install Django==2.0.5 说明:不指定版本,则安装的 ...

  8. iOS-iPad开发之popoverController使用介绍

    iOS-iPad开发之popoverController使用介绍 iOS开发UI篇-popoverController使用注意 iOS SDK:自定义Popover(弹出窗口) 实现的简单例子: // ...

  9. iOS-iPad开发之SplitViewController简单介绍

    iOS-iPad开发之SplitViewController简单介绍 SplitViewController图形化创建 SplitViewController可以并列显示两个view,适用于基于nav ...

随机推荐

  1. [windows]转帖 windows 版本的含义

    1.N是None的意思,由于欧洲反垄断法不让系统捆绑浏览器ie和播放器.LTSB全称为Long Term Support Branch,意思为长期支持分支,是给Windows 10企业用户的一个更新选 ...

  2. [转帖] sparkdev 的 博客 systemd

    从 init 系统说起 https://www.cnblogs.com/sparkdev/p/8448237.html systemd的内容 需要学习下. linux 操作系统的启动首先从 BIOS ...

  3. button 和 submit 的区别

    表单提交中button和submit的区别submit是button的一个特例,也是button的一种,它把提交这个动作自动集成了,submit和button,二者都以按钮的形式展现,看起来都是按钮, ...

  4. Java对中文进行排序

    对中文进行排序,同样是得定义一个Comparator,下面上代码: import java.text.Collator; import java.util.ArrayList; import java ...

  5. WebSite下创建webapi

    注意这里说的是WebSite,不是Webapp 就是我们常说的新建网站,而不是新建项目 直接上代码: 1 在要在website下创建,那么应该这么干.先添加引用和global.asax 2 然后创建对 ...

  6. MT【103】二阶递推找规律

    评:如果直接找$a_n$的二阶递推式:$a_{n+2}-2\sqrt{2}a_{n+1}-a_n=0$有根号,不利于估计尾数.

  7. 分库分表中间件sharding-jdbc的使用

    数据分片产生的背景,可以查看https://shardingsphere.apache.org/document/current/cn/features/sharding/,包括了垂直拆分和水平拆分的 ...

  8. (转)win下修改jdk环境变量后,java版本不变 java -version

    背景:在windows下安装了多个版本的jdk,发现修改环境变量无法切换. win 7环境下修改JAVA_HOME后,在命令行执行:java -version 发现版本没有变化,以为需要重启才行,就把 ...

  9. Mac 删除应用卸载后无法正常移除的图标

    经常会不通过appstore下载软件,也就是从网页中下载dmg,自己安装,但是当我不再想要这个软件,然后把它卸载掉之后就会发现,launchpad里还是遗留了这个软件的图标,而且删不掉.这个时候,就可 ...

  10. 以Java的视角来聊聊BIO、NIO与AIO的区别?

    转: 以Java的视角来聊聊BIO.NIO与AIO的区别? 飞丫玲丫 17-07-2623:10 题目:说一下BIO/AIO/NIO 有什么区别?及异步模式的用途和意义? BIO(Blocking I ...