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

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. python函数修饰符@的使用

    python函数修饰符@的作用是为现有函数增加额外的功能,常用于插入日志.性能测试.事务处理等等. 创建函数修饰符的规则:(1)修饰符是一个函数(2)修饰符取被修饰函数为参数(3)修饰符返回一个新函数 ...

  2. mysql-操作篇

    # ### mysqlctrl + l 清屏ctrl + c 终止[linux]service mysql start 启动mysqlservice mysql stop 停止mysqlservice ...

  3. Python—其它模块

    系统监控模块psutil(第三方模块) psutil是一个跨平台的库,用于在Python中检索系统运行的进程和系统利用率(CPU,内存,磁盘,网络,传感器)的信息.它主要用于系统监控,性能分析,进程管 ...

  4. Python—系统模块(os和sys)

    os模块 https://www.cnblogs.com/feifeifeisir/p/9519282.html sys模块 获取Python版本信息 import sys a = sys.versi ...

  5. [视频教程] 使用docker的方式安装redis

    直接使用docker拉取redis的镜像,并且进行端口映射与文件目录共享,这样可以直接在宿主机的端口上就可以进行访问了.其实本质上也是在一个简化版的ubuntu的容器内安装好的redis-server ...

  6. java链接集合

    Intellij IDEA 导入eclipse web 项目详细操作 https://blog.csdn.net/deng11408205/article/details/79723213?utm_s ...

  7. vue-router 之 keep-alive路由缓存处理include+exclude

    keep-alive 简介 keep-alive 是 Vue 内置的一个组件,可以使被包含的组件保留状态,或避免重新渲染. 用法也很简单: <keep-alive> <compone ...

  8. Appium左右、上下滑动(Java)

    网上很多文章都说用swipe来左右滑动,你把代码一贴,结果报错,看半天,原来是java-client中swipe早就被废除了!!!下面介绍一种Java写法来左右上下滑动: 首先,创建一个Swipe类 ...

  9. 3、zabbix组件之间的关系

    我们在安装zabbix的时候安装了四个软件:zabbix-server.zabbix-server-mysql.zabbix-web-mysql.zabbix-agent,那么这个四个软件之间有什么关 ...

  10. jQuery的配置。

    在python中有提前定义模板的功能,所以提前将jQuery的导入语句导入就可以直接使用jQuery语法: 一.下载jQuery包. 下载官网: https://jquery.com/ 可下载迷你版的 ...