自动化测试主要分为下面三种:

1.单元测试(Unit Test)

对单独的代码块,比如函数进行测试。单元测试是自动化测试的主要形式,也是最基本的形式。


2.集成测试(Integration Test)

集成测试对代码单位之间的协同工作进行测试,比如测试主程序和各个扩展的继承代码。这个部分的测试不容易编写,各个扩展通常会包含集成测试。在部署到云平台时,集成测试可以确保程序和云平台的各个接口正常协作。


3.用户界面测试(User Interface Test)

称为UI测试,也被称为端对端测试或全链路测试,因为需要启动服务器并调用浏览器完成测试,所以耗时比较长,适合用来测试复杂的页面交互,比如包含JavaScript代码和AJAX请求等实现功能。


4.使用unittest编写测试单元

python标准库内置一个单元测试框架--unittest,其包含:

1)测试用例(Test Case)

在unittest中,最小的测试单元被称为测试用例,它由继承unittest.TestCase的类表示。每个测试用例中包含多个测试方法。

测试用例可以创建setUp()tearDown()方法,它们会分别在每个测试方法被执行的前后执行,用来初始化测试环境、清除测试环境。

测试用例还有setUpClass()tearDownClass()方法,这两个方法必须接收类本身作为唯一的参数,并附加Classmethod装饰器,它们会分别在整个测试用例执行的前后执行。

2)测试固件(Test Fixture)

测试固件是指执行测试所需的前期准备工作(如创建临时数据库)和后期清理工作(如清除数据库)。

3)测试集(Test Suite)

测试集是测试用例的集合,用来聚合所有测试以便执行。

4)测试运行器(Test Runner)

测试运行器用来运行测试,收集测试结果,并呈现给用户。


5.测试驱动开发(Test-Driven Development, TDD)

一种测试优先的开发模式叫做测试驱动开发(Test-Driven Development, TDD),在TDD中,测试是先于开发进行的,要实现某个功能先编写代码,不断完善代码直至通过测试为止,这个周期不断循环直至实现整个程序。它遵循KISS(Keep It Simple, Stupid)和YAGNI(You Aren't Gonna Need It)原则,通过这种模式编写出的代码会非常简洁,不会产生多余的代码和程序功能。

web自动化测试的更多相关文章

  1. web自动化测试中绕开验证码登陆的方式

    web自动化测试中登陆需验证码是很大的一个困扰.现推荐一种简单的避开验证码登陆的方式,先代码进入登录页,人工输入验证码登录后浏览器自动保存cookie,再在新的标签中登录. 具体代码如下: publi ...

  2. Web自动化测试工具调研

    背景 Web自动化测试越来越被重视, 因为现在Web已经是工程化的状态. 如何通过工具测试, 保证Web开发的质量,提升开发效率,是Web工具的诞生的来由. Web测试分为以下几个方面: 1. 界面测 ...

  3. Web自动化测试学习方向(Selenium)

    目前越来越多的人想学自动化测试,认为自动化测试好牛逼.经常在测试交流群里看见有HR发招聘广告说:招初级(功能测试),招中级(性能测试),招高级(自动化测试)...... 我不去讨论他们这个初中高级的说 ...

  4. Web自动化测试 Selenium 1/3

    Selenium 名字的来源 在这里,我还想说一下关于 Selenium 名字的来源,很有意思的 : > : Selenium 的中文名为 “ 硒 ” ,是一种化学元素的名字,它 对 汞 ( M ...

  5. TestNG测试框架在基于Selenium进行的web自动化测试中的应用

    转载请注明出自天外归云的博客园:http://www.cnblogs.com/LanTianYou/ TestNG+Selenium+Ant TestNG这个测试框架可以很好的和基于Selenium的 ...

  6. 使用 Sahi 实现 Web 自动化测试

    Sahi 是 Tyto Software 旗下的一个基于业务的开源 Web 应用自动化测试工具.Sahi 运行为一个代理服务器,并通过注入 JavaScript 来访问 Web 页面中的元素.Sahi ...

  7. 从手工测试转型web自动化测试继而转型成专门做自动化测试的学习路线。

    在开始之前先自学两个工具商业web自动化测试工具请自学QTP:QTP的学习可以跳过,我是跳过了的.开源web自动化测试工具请自学Selenium:我当年是先学watir(耗时1周),再学seleniu ...

  8. Windows环境搭建Web自动化测试框架Watir

    Windows环境搭建Web自动化测试框架Watir 一.前言     Web自动化测试一直是一个比较迫切的问题,对于现在web开发的敏捷开发,却没有相对应的敏捷测试,故开此主题,一边研究,一边将We ...

  9. Web自动化测试学习点总结

    "大不可量,深不可测"这是出自<韩非子·主道>的一段话.关于自动化测试也是如此,web系统开发完成,测试人员对页面进行测试,寻找bug.这个过程,需要摸索着前进. 什么 ...

  10. 自动化测试(—)Web自动化测试理解

          最近几天,由于工作需要接触Web自动化测试,所以我从网上找的资料,学习了解,然后自己总结汇总的随笔,如文章中有不足的地方,请大家多多指教:或者文章内容与他人相似,望见谅. 手工测试跟自动化 ...

随机推荐

  1. iOS中进程与线程(多线程、主次线程)

    一.什么是线程?什么是多线程?              线程是用来执行任务的,线程彻底执行完任务A才能去执行任务B.为了同时执行两个任务,产生了多线程. 例子: 打开一个音乐软件,用户开辟一个线程A ...

  2. Mysql8.0主从复制搭建,shardingsphere+springboot+mybatis读写分离

    1.安装mysql8.0 首先需要在192.167.3.171上安装JDK. 下载mysql安装包,https://dev.mysql.com/downloads/,找到以下页面下载. 下载后放到li ...

  3. 我写了个项目,帮你学习HTTP接口测试!

    端午节我写了一个项目,帮助你学习HTTP接口测试. GitHub地址: https://github.com/defnngj/learning-API-test 整个项目基于Flask和 Reques ...

  4. CodeForces - 1244D (思维+暴力)

    题意 https://vjudge.net/problem/CodeForces-1244D 有一棵树,有3种颜色,第i个节点染成第j种颜色的代价是c(i,j),现在要你求出一种染色方案,使得总代价最 ...

  5. 解决springboot读取jar包中文件的问题

    转载自: https://www.oschina.net/question/2272552_2269641 https://stackoverflow.com/questions/25869428/c ...

  6. nginx代理ambassador出现426错误

    现在ambassador文档啃得差不多了.进入实战阶段. 一开始,就偶遇426错误. 网络结构大致如下: 浏览器访问nginx, nginx代理到k8s内的ambassador, ambassador ...

  7. 人工智能+Python:十大Markdown语法简明教程

    Markdown 是一种轻量级的标记语言,用户可以使用诸如 * # 等简单的标记符号以最小的输入代价生成极富表现力的文档,目前也被越来越多的写作爱好者,撰稿者广泛使用.本文希望用直观的方法来讲述Mar ...

  8. linux虚拟机安装python 及 配置环境变量

    一.安装anaconda 下载anaconda安装包 (wget -P filepath 下载链接) linux下安装anaconda教程,并添加清华镜像 sh Anaconda3-5.3.1-Lin ...

  9. java.net.URL类

    package com.mozq.boot.kuayu01.demo; import java.net.MalformedURLException; import java.net.URL; publ ...

  10. SpringMVC拦截器(四)

    拦截器,本质类似于AOP,主要的应用场景: 日志记录:记录请求信息的日志,以便进行信息监控.信息统计.计算PV等. 权限检查:如登录检测,进入处理器检测是否登录,没有登录返回登录页面. 性能监控:记录 ...