为进一步加强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. COM学习(一)——COM基础思想

    概述 学习微软技术COM是绕不开的一道坎,最近做项目的时候发现有许多功能需要用到COM中的内容,虽然只是简单的使用COM中封装好的内容,但是许多代码仍然只知其然,不知其所以然,所以我决定从头开始好好学 ...

  2. python与 Ajax跨域请求

    同源策略 同源策略(Same origin policy)是一种约定,它是浏览器最核心也最基本的安全功能,如果缺少了同源策略,则浏览器的正常功能可能都会受到影响.可以说Web是构建在同源策略基础之上的 ...

  3. 利用java的反射,实现工厂创建对象

    public static Object getInstance(Class c){ Object obj = null; try { obj = c.newInstance(); } catch ( ...

  4. kmalloc、vmalloc、__get_free_pages()的区别

    一.分布位置上的区别: kmalloc()和__get_free_pages()函数申请的内存位于物理内存的映射区域,而且在物理上也是连续的,它们与真实的物理地址只有一个固定的偏移,因此存在简单的线性 ...

  5. Haproxy原理(1)

    一.四层和七层负载均衡的区别 所谓的四层就是ISO参考模型中的第四层.四层负载均衡也称为四层交换机,它主要是通过分析IP层及TCP/UDP层的流量实现的基于IP加端口的负载均衡.常见的基于四层的负载均 ...

  6. Spring+SpringMVC+MyBatis+easyUI整合优化篇

    优化篇 Spring+SpringMVC+MyBatis+easyUI整合优化篇(一)System.out.print与Log Spring+SpringMVC+MyBatis+easyUI整合优化篇 ...

  7. 解决:java.io.IOException: No FileSystem for scheme: hdfs

    解决:java.io.IOException: No FileSystem for scheme: hdfs 开发项目初期,写完代码开始放到服务器上开始测试的时候,报出这样的一个错,不知道怎么处理了, ...

  8. Oracle 11G Client 安装就可以用上Oracle11G啦,不用傻傻的安装2G多的Oracle啦,安装特别简单,使用起来更简单

    下载地址: http://download.oracle.com/otn/nt/oracle11g/112010/win32_11gR2_client.zip 先将下载下来的ZIP文件解压,并运行se ...

  9. 你不知道的JSON.stringify和JSON.parse

    json是JavaScript 对象表示法(JavaScript Object Notation),是一种简单的数据格式,类似于XML,其格式为名称/值对,数据用逗号隔开,名称必须用双引号括起来.例如 ...

  10. Jfinal拦截器源码解读

    本文对Jfinal拦截器源码做以下分析说明