为进一步加强Python知识扩展和学习,在朋友的推荐下选择了<<Selenium2自动化测试实战>>,作者胡志恒,基于Python语言实现,以实例的方式详细讲解WebDriver的类库体系,对于目前阶段的我来说很适合,本着"把书读厚再把书读薄"的思想开始学习!

自动化测试基础

1. 软件测试分类

  1) 根据项目流程阶段划分软件测试 

    

    单元测试:模块接口、局部数据格式、路径、错误处理、边界条件测

    集成测试:将各个模块进行整合,判断整体功能是否达到预期要求,全局数据结构是否有问题,单个模块的误差积累是否会被放大

    系统测试:功能测试、性能测试、稳定性测试、安全测试、兼容测试

    验收性测试:根据项目合同进行各种确认测试

  2) 白盒测试、黑盒测试、灰盒测试  

            

    黑盒测试:着眼余程序的外部结构,不考虑内部逻辑,主要对软件功能和软件UI进行测试,只关心软件的输入和输出

    白盒测试:按照规格说明书对程序的内部结构进行测试

    灰盒测试:介于黑盒和白盒之间,既关注内部表现也关注输入输出

  3) 功能测试与性能测试

    功能测试:检查实际的功能是否符合用户的需求。功能测试又可可以细分为很多种:逻辑功能测试、界面测试、易用性测试、安装测试、兼容性测试等

    性能测试:通过自动化测试工具模拟多种正常、峰值以及异常负载条件来对系统的各项性能指标进行测试软件的性能主要有时间性能和控件性能两种,时间性能指指令的响应时间,空间性能反映在硬件资源、cpu、内存、带宽消耗等

  4) 手工测试与自动化测试

    手工测试:需要拥有一定的业务知识和基本测试方法的专业的测试人员通过键盘鼠标等输入一些参数查看返回的结构是否符合预期结果,在目前的测试领域,手工测试仍然是无法代替的一种测试方法

    自动化测试:功能自动化测试和性能自动化测试,通过测试工具(或框架)录制/编写测试脚本,对软件进行测试

  5) 冒烟测试、回归测试、随机测试、探索性测试和安全测试   

2. 分层的自动化测试

  

  自动化测试的重要性不断提升随着敏捷的热度不断提升,持续集成、持续交付作为敏捷的核心实践之一,越来越受到重视。然而大家很快发现,自动化测试是持续集成、持续交付的灵魂,没有有效的自动化测试保证,持续集成和持续交付就仅仅是一个无用的躯壳了。

  分层自动化测试倡导的是从黑盒(UI)单层到黑白盒多层的自动化测试体系,从全面黑盒自动化测试到对系统的不同层次进行自动化测试

  UI(UI界面层):UI自动化测试、JS自动化测试

  Service(业务逻辑层):模块接口测试、web接口测试

  Unit(数据处理层):单元测试、Code Review

什么样的项目适合自动化测试?

  a. 任务测试明确,不会频繁变动

  b. 比较频繁的回归测试

  c. 软件界面稳定,变动少

  d. 需要在多平台上运行的相同的测试案例、组合遍历性的测试,大量的重复任务

  e. 软件维护周期长

  f. 具备大量的自动化测试平台

  g. 测试人员具备较强测编程能力

  

<<Senium2自动化测试>>读书笔记一的更多相关文章

  1. 【鸟哥的Linux私房菜】笔记1

    Linux是什么 从操作系统与cpu架构关系到linux  Richard Mathew Stallman GPL 关于GNU计划 Linux的发展 Linux的核心版本 Linux的特色 Linux ...

  2. 【鸟哥的Linux私房菜】笔记3

    正确地开机 最好不要使用root账号登陆!GNOME图形界面 View items as a list X WindowShell 文本交互界面bash是Shell的名称,Linux的默认壳程序就是b ...

  3. 【鸟哥的Linux私房菜】笔记2

    Linux的应用 学习资源整理 安装记录 >< 1.Linux的应用: 网络服务器 数据库 学术机构的高效运算任务 嵌入式系统 ... 2.挂载与磁盘分区 学习资源整理 学习 1.书上的网 ...

  4. 《鸟哥的Linux私房菜》笔记——02. 关于Linux

    Unix 历史 1969年以前:伟大的梦想--Bell, MIT 与 GE 的「Multics」系统 1969年:Ken Thompson 的小型 file server system 1973年:U ...

  5. 《鸟哥的Linux私房菜》笔记——03. 磁盘分区

    Everything is a file. 常见硬件对应于 Linux 下的文件(/dev目录下) 装置 装置在Linux内的档名 SCSI/SATA/U盘硬盘机 /dev/sd[a-p] U盘 /d ...

  6. 鸟哥的linux私房菜学习笔记 __ 命令与文件的搜寻

    连续输入两次[tab]按键就能够知道使用者有多少命令可以下达.那你知不知道这些命令的完整档名放在哪里?举例来说,ls 这个常用的命令放在哪里呢? 就透过 which 或 type 来找寻吧! 范例一: ...

  7. 【鸟哥的Linux私房菜】笔记

    操作系统核心的功能! 驱动程序与操作系统的关系 2. [计算机组成之组件] 3.CPU实际要处理的数据完全来自于主存储器,这是一个很重要的概念! 4.CPU是整个计算机系统最重要的部分,那么目前世界上 ...

  8. 《鸟哥的Linux私房菜》笔记——04. 简单命令行

    键入命令 [dmtsai@study ~]$ command [-options] parameter1 parameter2 ... 指令 選項 參數(1) 參數(2) 注意:有时也可以使用 + 放 ...

  9. 鸟哥的Linux私房菜学习笔记——文件权限与目录配置

    Linux的文件权限和目录配置 在linux中的每个用户必需属于一个组,不能独立于组外.在linux中每个文件有所有者.所在组.其它组的概念. (1)所有者 一般为文件的创建者,谁创建了该文件,就是天 ...

  10. 鸟哥的Linux私房菜学习笔记(1)

    2014/10/29 1.档案的权限管理分为三个部分: 拥有者.群组.其他 2.ls -al 命令可以看到档案的详细信息 3.档案的属性中由十个部分构成 第一个部分是档案类型 -代表档案.d代表文件夹 ...

随机推荐

  1. vue-devtools(vue 2.0)手动安装与使用 ? 如何处理Vue.js is detected on this page ?

    vue-devtools手动安装与使用   一.在github上下载压缩包,github下载地址:https://github.com/vuejs/vue-devtools 二.解压到本地的某盘 三. ...

  2. python3之socket&socketserver网络编程

    1.套接字与套接模块 套接字是为特定网络协议(例如TCP/IP,ICMP/IP,UDP/IP等)套件对上的网络应用程序提供者提供当前可移植标准的对象.它们允许程序接受并进行连接,如发送和接受数据.为了 ...

  3. 深入学习Java8 Lambda (default method, lambda, function reference, java.util.function 包)

    Java 8 Lambda .MethodReference.function包 多年前,学校讲述C#时,就已经知道有Lambda,也惊喜于它的方便,将函数式编程方式和面向对象式编程基于一身.此外在使 ...

  4. Echars 6大公共组件详解

    Echars 六大组件详解 : title  tooltip toolbox legend  dataZoom visualMap 一.title标题详解 myTitleStyle = { color ...

  5. c#中常用集合类和集合接口之接口系列【转】

    常用集合接口系列:http://www.cnblogs.com/fengxiaojiu/p/7997704.html 常用集合类系列:http://www.cnblogs.com/fengxiaoji ...

  6. Codeforces 791A Bear and Big Brother(暴力枚举,模拟)

    A. Bear and Big Brother time limit per test:1 second memory limit per test:256 megabytes input:stand ...

  7. Victor and World(spfa+状态压缩dp)

    题目连接:http://acm.hdu.edu.cn/showproblem.php?pid=5418 Victor and World Time Limit: 4000/2000 MS (Java/ ...

  8. flume1.8 基础架构介绍(一)

    1. 系统要求 1. Java运行环境 -- Java 1.8及以上 2. 内存 -- 足够的内存供配置的sources,channels 或者sinks使用 3. 硬盘空间 -- 足够的硬盘空间供配 ...

  9. 1.移植3.4内核-分析内核启动过程,重新分区,烧写jffs2文件系统

    1.在上章-移植uboot里.我们来分析下uboot是如何进入到内核的 首先,uboot启动内核是通过bootcmd命令行实现的,在我们之前移植的bootcmd命令行如下所示: bootcmd=nan ...

  10. [国嵌笔记][020][ARM家族大检阅]

    ARM芯片:2440(arm9) 6410(arm11) 210(cortex-A8) ARM核:arm9(arm-v4) arm11(arm-v6) cortex-A8(arm-v7) 指令架构:a ...