一.更易读的测试报告 1.知识点:python的注释. 1.一种叫comment,为普通的注释2.另一种叫doc string,用于函数,类和方法的描述.在类或方法的下方,通过三引号(""" """或''' ''')来添加doc string类型的注释,这类注释在平时调用的时候不显示,可以通过help()方法来查看类或方法的这种注释. HTMLTestRunner可以读取doc string类型的注释,所以,我们只需要给测试类或方法添加这种类型的…
Selenium 2自动化测试实战 百度网盘 链接:https://pan.baidu.com/s/1aiP3d8Y1QlcHD3fAlEj4sg 提取码:jp8e 复制这段内容后打开百度网盘手机App,操作更方便哦 内容简介  · · · · · · <Selenium 2自动化测试实战——基于Python语言>共分 14 章.第 1 章是自动化测试相关基础知识的介绍:第 2 章到第 10 章是<Selenium 2自动化测试实战——基于Python语言>的重点,循 序渐进地介绍…
一.函数.类和方法1.函数在python中通过def关键字来定义函数 创建一个add()函数,此函数接收两个参数a,b,通过print()打印a+b的结果.调用add()函数,并且上传两个参数3,5给add()函数 通过add()函数不会直接打印结果,而是将处理结果通过return关键字返回,如下图所示 有时我们在调用add()函数的时候不想传参,这时可以为add()函数设置默认参数,如下图所示 如果调用时不传参,那么add()函数就使用默认参数进行计算,如果传参则计算参数的值 2.类和方法2.…
虫师的<Selenium 2自动化测试实战 基于Python语言>是我自动化测试的启蒙书 也是我推荐的自动化测试入门必备书,但是书中有一处明显的错误,会误导很多读者,这处错误就是第8章自动化测试高级应用中,第一节自动发送邮件功能中,8.1.4整合自动发送邮件功能 当我们运行如下代码后,会发现邮件发送成功,但是打开邮件发现邮件中的内容为空 在书中182页我们看到了如下解释. 但是这个解释为错误的,引起无法发送最新报告的内容,其实是因为代码中有一处bug,并非HTMLTestRunner报告文件的…
友情链接 让Python更优雅更易读(第一集) 1.装饰器 1.1装饰器特别适合用来实现以下功能 运行时校验:在执行阶段进行特定校验,当校验通不过时终止执行. 适合原因:装饰器可以方便地在函数执行前介入,并且可以读取所有参数辅助校验. 注入额外参数:在函数被调用时自动注入额外的调用参数.适合原因:装饰器的位置在函数头部,非常靠近参数被定义的位置,关联性强. 缓存执行结果:通过调用参数等输入信息,直接缓存函数执行结果. 注册函数:将被装饰函数注册为某个外部流程的一部分.适合原因:在定义函数时可以直…
背景 最近在弄 appium,然后顺便发现了 Selenium 框架和这本书,恰好这本书也介绍了一些软件测试&自动化测试的理论知识,遂拿过来学习学习.所以本文几乎没有实践内容,大多都是概念和工具的 mark,后续若有实践,我会来补充的. 一.软件测试 分类 1.根据项目流程阶段划分 需求分析 设计 编码 单元测试 集成测试 系统测试 验收测试 2.白盒测试.黑盒测试.灰盒测试 白盒测试的意义:有时候输出是正确的,但内部其实已经错误了,这种情况非常多. 灰盒测试的意义:如果每次都通过白盒测试来操作…
从开始编码到现在,从没有意识去如何去写出更加规范,更加易读的代码,只是按照需求将某一功能进行实现.下面是最近在网上搜索查看的一些通用的知识点,做一记录. 单一抽象层次 单一抽象层次是指一个函数或者方法中的所有操作处于相同层次. 其实说白了就是把复杂的东西,业务多的模块进行细小的在拆分.让其函数只做一件事. 下面这张图就可以说明这个单一层次.对复杂的模块再次进行拆分,整理.让思路更加清晰,不要把所有的业务逻辑写在堆积在一个方法中. 最小化缩进 其实这个是说在写业务逻辑代码中,在复杂的条件判断中,我…
一.webdriver原理 webdriver是按照Server-Client的经典设计模式设计的.Server端就是Remote Server,可以是任意的浏览器.当我们的脚本启动浏览器后,该浏览器就是Remote Server,它的职责就是等待Client发送请求并作出响应.Client简单来说就是我们的测试代码,我们测试代码中的一些行为,例如打开浏览器,转跳到特定的URL等操作是以http请求的方式发送给被测试浏览器的,也就是Remote Server.Remote Server接受请求,…
Page Object设计模式 Page object是selenium自动化测试项目开发时间的最佳设计模式之一,主要体现在对界面交互细节的封装. 1.认识page object优点如下:1.减少代码的重复2.提高测试用例的可读性3.提高测试用例的可维护性,特别是针对UI频繁变化的项目. 2.page object实例下面以登录新浪邮箱为例,通过page object设计模式来实现. #po_model.py #coding:utf-8 from selenium import webdrive…
一.自动化测试模型 自动化测试模型介绍:线性测试.模块化驱动测试.数据驱动测试和关键字驱动测试 线性测试:每个测试脚本相对独立,且不产生其他依赖与调用,只是单纯的来模拟用户完整的操作场景.模块化驱动测试:把重复的操作独立成公共模块,当用例执行过程中需要用到这一模块操作时则被调用.数据驱动测试:就是数据的参数化,因为输入数据的不同从而引起输出结果的不同.不管我们读取的是定义的数组.字典,或者是外部文件(excel.csv.txt.xml等)都可以看做是数据驱动,它的目的就是实现数据与脚本的分离.…