Unittest框架的从零到壹(二)】的更多相关文章

四大重要概念 在unittest文档中有四个重要的概念:Test Case.Test Suite.Test Runner和Test Fixture.只有理解了这几个概念,才能理解单元测试的基本特征. 1.Test Case Test Case是最小的测试单元,用于检查特定输入集合的特定返回值.unittest提供了TestCase基类,我们创建的测试类需要继承该基类,它可以用来创建新的测试用例. 2.Test Suite测试套件是测试用例.测试套件或两者的集合,用于组装一组要运行的测试.unit…
前言 Python中有非常多的单元测试框架,如unittest.pytest.nose.doctest等,Python2.1及其以后的版本已经将unittest作为一个标准模块放入Python开发包中.并且在pytest框架中,是可以兼容运行unittest的代码的,简单来说,就是学一顶俩.并且unittest也是比较简单上手的,等unittest篇完结后,我们再开一个pytest篇.成为自动化测试大神指日可待…
1.定位元素(id.name.class.link.partial link) (1)find_element_by_id() 用百度定位测试,用firebug查看定位元素 ,输入框的id为“kw”,[百度一下]按钮的id为“su”. from selenium import webdriver #导入selenium的webdriver包 driver = webdriver.Firefox() driver.get("https://www.baidu.com") driver.f…
1.unittest单元测试框架文件结构 unittest是python单元测试框架之一,unittest测试框架的主要文件结构: File >report >all_case.py >test_case >__init__.py >test_case1..... >public >__init__.py >login.py >loginout.py test_case文件夹主要存放测试用例,且测试用例命名以test_开头 public文件夹是test…
什么是插件 Gitbook 插件是扩展 Gitbook 功能的最佳方式,如果 Gitbook 没有想要的功能或者说网络上也没有现成的解决方案时,那么只剩下自食其力这条道路,让我们一起来自力更生开发插件解决问题吧! 幸运的是,Gitbook 提供了插件机制留给开发者去扩展自定义功能,虽然官方开发文档不是特别完善,甚至有时候需要翻阅相关源码才能定位到暴露出的 api,但是这一切都不影响开发的热情,谁让我们一开始就选定了 Gitbook 呢! 遗憾的是,目前 Gitbook 已经停止了旧版服务,git…
本次写的是针对有代码基础的,没基础建议先去学基础,以下所有描述内容都是我已经在公司项目实践成功的!仅供参考 整体思路: 1.接口自动化用的是Python中unittest框架 2.所有的测试数据用例存放Excel表 3.封装一套读取和写入的Excel方法 4.重写request方法(为了从Excel读取数据后对数据作分析和判断并在测试报告生成相关信息) 5.通过HTMLTestRunner运行测试用例生成网页版报告 6.将自动化脚本放到公司git上,方便其他人员获取你的代码进行编写脚本,后面会具…
在日常的自动化测试过程中,Python里有一个自带的单元测试框架是unittest模块,简单易用,这里简单介绍下其主要的用法. Unittest测试框架主要包含四个部分 TestCase 也就是测试用例 TestSuite 多个测试用例集合在一起,就是TestSuite TestLoader是用来加载TestCase到TestSuite中的 TestRunner是来执行测试用例的,测试的结果会保存到TestResult实例中,包括运行了多少测试用例,成功了多少,失败了多少等信息 这里盗一波图来图…
部分内容来自:https://www.cnblogs.com/klb561/p/8858122.html 一.基础介绍 核心概念:test case, testsuite, TestLoder,TextTestRunner,TextTestResult, test fixture TestCase(测试用例): 所有测试用例的基类,它是软件 测试中最基本的组成单元. 一个test case就是一个测试用例,是一个完整的测试流程,包括测试前环境的搭建setUp,执行测试代码(run),以及测试后环…
背景知识,某次使用HTMLTestRunner的时候,发现一直都无法导出报告,后来查询资料发现了一些坑,现在整理一下来龙去脉. 一:pycharm默认的是pytest框架去执行unittest框架的测试用例 import unittest class AlienTest(unittest.TestCase): @classmethod def setUpClass(cls): print("TestCase start running ") def test_1_run(self):…
Test-driven development(TDD)开发模式在今天已经不是什么新奇的事了,它的开发思维是在开发一个产品功能的时候,先 编写好该功能的测试代码,在编写开发比如,比如要写二个数相除的函数,那么它的测试代码应该为: #!/usr/bin/env python #coding:utf-8 import unittest class TestDiv(unittest.TestCase): def setUp(self): pass def tearDown(self): pass de…
Unittest单元测试框架不仅可以适用于单元测试,还可以适用于自动化测试用来的开发与执行,该测试框架可执行测试用例,并提供丰富的断言方法,最终生成测试报告. 一.Unittest常用方法 1.TestCase: TestCase类,所有测试用例类继承的基本类 如: 2.main(): 使用它可以方便的将一个单元测试模块变为可直接运行的测试脚本,main()方法可以使用TestLoader类来搜索所有包含在该模块中以“test”开头命名的方法,并且执行他们.执行的默认顺序是根据ASCII码的顺序…
一.unittest框架 unittest属于python内置的单元测试框架. 二.unittest框架的核心概念 test case:指测试用例.unittest中提供了一个基本类TestCase,可以用来创建新的测试用例: ​test fixure:测试夹具,用于测试用例环境的搭建和销毁.即用例测试前准备环境的搭建(SetUp前置条件),测试后环境的还原(TearDown后置条件),比如测试前需要登录获取token等就是测试用例需要的环境,运行完后执行下一个用例前需要还原环境,以免影响下一条…
前言 使用了unittest.main()方法执行当前模块里的测试用例. 除此之外,Unittest还可以通过测试套件构造测试用例集,再执行测试用例 将测试用例添加至TestSuite(测试套件) 方式一:加载测试用例 先通过unittest.TestSuite() 创建测试套件实例对象,如:suite = unittest.TestSuite() 再通过addTest() 往测试套件里添加单个测试用例,或通过addTests([-]) 添加多个测试用例(列表中为用例方法名) 执行测试套件里的测…
学习unittest 很好的一个切入点就是从selenium IDE 录制导出脚本.相信不少新手学习selenium 也是从IED 开始的. IDE学习参考: 菜鸟学自动化测试(一)----selenium IDE 借助IED 录制脚本 将脚本导出,保存为baidu.py ,通过python IDLE编辑器打开.如下: from selenium import webdriver from selenium.webdriver.common.by import By from selenium.…
from selenium import webdriverfrom selenium.webdriver.common.by import Byfrom selenium.webdriver.common.keys import Keysfrom selenium.webdriver.support.ui import Selectfrom selenium.common.exceptions import NoSuchElementExceptionfrom selenium.common.…
使用Jquery+EasyUI 进行框架项目开发案例讲解之二 用户管理源码分享   在上一篇文章<使用Jquery+EasyUI进行框架项目开发案例讲解之一---员工管理源码分享>我们分享了使用Jquery EasyUI来进行开发的相关方法,同时对入群的用户提供了使用Jquery EasyUI开发的框架案例提供了测试地址进行在线测试,文章发表后得到了非常多的反馈,对后期版本的改进提供了很好的帮助,在此感谢!整个文章皆在说明如何使用RIDFramework.NET进行管理类信息系统的开发,Eas…
使用Jquery+EasyUI 进行框架项目开发案例解说之二 用户管理源代码分享  在上一篇文章<使用Jquery+EasyUI进行框架项目开发案例解说之中的一个---员工管理源代码分享>我们分享了使用Jquery EasyUI来进行开发的相关方法,同一时候对入群的用户提供了使用Jquery EasyUI开发的框架案例提供了測试地址进行在线測试,文章发表后得到了许多的反馈,对后期版本号的改进提供了很好的帮助,在此感谢!整个文章皆在说明怎样使用RIDFramework.NET进行管理类信息系统的…
unittest 框架 学习unittest 很好的一个切入点就是从selenium IDE 录制导出脚本.相信不少新手学习selenium 也是从IED 开始的. IDE学习参考: 菜鸟学自动化测试(一)----selenium IDE 借助IED 录制脚本 将脚本导出,保存为baidu.py ,通过python IDLE编辑器打开.如下: from selenium import webdriver from selenium.webdriver.common.by import By fr…
unittest是Python语言自带的单元测试框架,原名PyUnit. 认识unittest 在unittest框架中有4个重要概念:test fixture.test case.test suite和test runner.详情: test fixture:测试用例环境的搭建和销毁,通过覆盖TestCase的setUp()和tearDown()方法实现,非unittest属性. unittest.TestCase:TestCase类,所有测试用例类继承的父类. unittest.TestSu…
一个简单的跑接口流程:登录后发表带图片的博客.这里涉及到的知识点: 1.登录时通过cookies去保持登录状态,把cookies添加到一个session中,这样可以保持长时间登录状态: 2.我们通过爬虫获取页面的title标签的文本判断登录成功: 3.通过抓包找到上传图片的地址,通过post方式来上传图片: 4.抓包找到发布博客的地址,最后发布博客: 5.使用了unittest框架来完成接口流程测试,作为一个测试用例. ApiMethod.py的代码如下: # coding:utf-8 impo…
在第一目里写了几个简单demo,并把调用get和post请求的方法封装到了一个类里,这次结合python自带的unittest框架,用之前封装的方法来写一个接口测试demo 1.unittest简单用法 # -*-coding:UTF:8-*- import unittest class TestMethod(unittest.TestCase): # 定义一个类,继承自unittest.TestCase # 每次执行用例前执行setUp(),可以在这里做一些初始化的工作 def setUp(s…
根据我上个随笔的unittest框架优化得来,虽然对于smtp模块还是有点迷糊,不过还是勉强搭建运行成功了,还是先上代码: #login_test.py import requests class Login(): def test_login(self,username,password): url = "http://localhost:8080r/login" user_pwd = {} user_pwd["mobilephone"] = username u…
unittest是python自带的单元测试框架,尽管其主要是为单元测试服务的,但我们也可以用它来做UI自动化测试和接口的自动化测试. unittest框架为我们编写用例提供了如下的能力 定义用例的能力.unittest框架有一套固有套路,可以让我们定义测试用例时更加简单和统一 断言的能力.unittest框架提供了一系列的断言 各种执行策略.通过test suit或者扩展的方式,我们可以自定义用例执行的策略 举例: import unittest class TestCase(unittest…
获取token 在做接口自动化的时候,经常会遇到多个用例需要用同一个参数token,并且这些测试用例跨.py脚本了. 一般token只需要获取一次就行了,然后其它使用unittest框架的测试用例全部调用这个参数,那么如何实现呢? 虽然python里面有个全局变量global,但这个只是针对于在同一个.py里才有效,跨脚本就不起作用了. 解决思路 1.首先把公共数据单独抽出来,用一个文件去管理,如yaml文件 2.写一个读yaml文件的get_token()函数放到a.py,去读取需要的数据 3…
在unittest框架的自动化接口测试中,可以用yaml文件来管理用例,这样一方面,不会像excel管理用例那么死板:另一方面,数据读取出来就是一个字典,便于取值,用起来更灵活. 首先,需要安装一个模块,pip install pyyaml即可,然后在python文件中导入import yaml 例如:新建一个login.yaml文件或者login.yml文件,内容如下: 然后在python文件里面码代码读取文件内容 import yaml f = open('param.yaml',encod…
unittest框架的学习得益于虫师的<selenium+python自动化实践>这一书,该书讲得很详细,大家可以去看下,我也只学到一点点用于工作中,闲暇时记录下自己所学才能更加印象深刻.unittest框架学习需要掌握以下知识点: (1)Selenium原理及工具使用 (2)webdriver元素定位,id,name,class name,css seletor,xpath (3)python语言基础,模块,参数化,语言,装饰器 (4)unittest框架认识及学习:模块化,断言,参数化,数…
1. 写代码备份mysql数据库: 1)Linux下,备份mysql数据库,在shell下执行命令:mysqldump -uroot -p123456 -A >db_bak.sql即可 import os import datetime class BakDb(object): def __init__(self, ip, username, passwd, port=3306, path='/tmp/db_bak'): self.ip = ip self.username = username…
unittest 下的属性 1.Unittest.TestCase:所有测试用例类继承的基本类 2.Unittest.main():将一个单元测试模块变为可直接运行的测试脚本 If __name__ == “__main__”: Unittest.main() 3.Unittest.TestSuite:创建测试套件 4.unittest.TextTestRunner():unittest 框架的 TextTestRunner()类,通过该类下面的 run()方 法来运行 suite 所组装的测试…
1. Unittest 是 python 自带的单元测试框架,可以用其作为自动化框架来组织测试用例(测 试用例的执行顺序)的执行. 2. Unittest 框架的流程: 写好 TestCase 通过 TestLoader 加载 TestCase 到 TestSuite 中 通过 TextTestRunner 来原型 TestSuite,结果保存在 TextTestResult 中,我们通过命 令行或者 unittest.main()来执行 3.通过 TextTestRunner 来原型 Test…
es6从零学习(二):promise 一:promise的由来 某些情况下,回调嵌套很多时,代码就会非常繁琐,会给我们的编程带来很多的麻烦,这种情况俗称——回调地狱.由此,Promise的概念就由社区提出并实现,作用与回调方法几乎一致,都是在某种情况下执行预先设定好的方法,但是使用它却能够让代码变得更简洁清晰 二:Promise对象有以下两个特点. 1.对象的状态不受外界影响.Promise对象代表一个异步操作,有三种状态:pending(进行中).fulfilled(已成功)和rejected…