当前位置: 首页 > news >正文

网站开发法律可行性单位建设网站需要招标

网站开发法律可行性,单位建设网站需要招标,西安网络公司推荐,注册商贸公司需要什么条件Unittest vs Pytest 主要从用例编写规则、用例的前置和后置、参数化、断言、用例执行、失败重运行和报告这几个方面比较unittest和pytest的区别: 用例编写规则 用例前置与后置条件 断言 测试报告 失败重跑机制 参数化 用例分类执行 如果不好看#xff0c;可以看下面表格…Unittest vs Pytest 主要从用例编写规则、用例的前置和后置、参数化、断言、用例执行、失败重运行和报告这几个方面比较unittest和pytest的区别: 用例编写规则 用例前置与后置条件 断言 测试报告 失败重跑机制 参数化 用例分类执行 如果不好看可以看下面表格 总体来说unittest用例格式复杂兼容性无插件少二次开发方便。pytest更加方便快捷用例格式简单可以执行unittest风格的测试用例无须修改unittest用例的任何代码有较好的兼容性。pytest插件丰富比如flask插件可用于用例出错重跑还有xdist插件可用于设备并行执行效率更高。 实例演示 讲了七大区别总要演示一下具体实例用事实说话。 前后置区别 这里抽用例前置与后置的区别来讲先看unittest的前后置使用 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 import unittest class TestFixtures01(unittest.TestCase):     # 所有用例执行前执行     def setUp(self) - None:         print(setUp开始)     def tearDown(self) - None:         print(tearDown结束)     # 每条用例执行前执行     classmethod     def setUpClass(cls) - None:         print(setUpClass开始)     classmethod     def tearDownClass(cls) - None:         print(tearDownClass结束)     # 测试用例     def test_001(self):         print(测试用例001) class TestFixtures02(unittest.TestCase):     def test_002(self):         print(测试类2) # 每个模块执行前执行 def setUpModule():          在所有测试类在调用之前会被执行一次,函数名是固定写法,会被unittest框架自动识别          print(集成测试 开始) def tearDownModule():     print(集成测试 结束) if __name__  __main__:     unittest.main() 运行结果 从结果上得知 三个方法的逻辑优先级 setUp()tearDown()  setUpClass()tearDownClass()  setUpModule()tearDownModule() 接下来看pytest的前后置 1、我们都知道在自动化测试中都会用到前后置pytest 相比 unittest 无论是前后置还是插件等都灵活了许多还能自己用 fixture 来定义。 首先了解一下用例运行前后置级别如下 1.模块级全局的整个模块开只运行一次优先于测试用例。 2.类级别定义在类里面只针对此类生效。类似unittest的cls装饰器 3.函数级只对函数生效类下面的函数不生效。 4.方法级定义在类里面每个用例都执行一次 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 def setup_module():     print(\n整个模块 前 只运行一次) def teardown_module():     print(\n整个模块 后 只运行一次) def setup_function():     print(\n不在类中的函数每个用例 前 只运行一次) def teardown_function():     print(\n不在类中的函数每个用例 后 只运行一次) def test_ab():     b 2     assert b 3 def test_aba():     b 2     assert b 3 class Test_api():     def setup_class(self):         print(\n此类用例 前 只执行一次)     def teardown_class(self):         print(\n此类用例 后 只执行一次)     def setup_method(self):         print(\n此类每个用例 前 只执行一次)     def teardown_method(self):         print(\n此类每个用例 后 执行一次)     def test_aa(self):         a 1         print(\n我是用例a)       # pytest -s 显示打印内容         assert a 0     def test_b(self):         b 2         assert b 3 运行结果 2、这是原始用法下面看使用FixtureFixture 其实就是自定义 pytest 执行用例前置和后置操作首先创建 conftest.py 文件 规定此命名导入 pytest 模块运用 pytest.fixture 装饰器默认级别为函数级 其它用例文件调用即可如下定义一个函数继承 conftest.py 文件里的 login 函数即可调用 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 # conftest.py配置需要注意以下点 # conftest.py配置脚本名称是固定的不能改名称 # conftest.py与运行的用例要在同一个pakage下并且有__init__.py文件 # 不需要import导入 conftest.pypytest用例会自动查找 import pytest def test_one(login):     print(登陆后操作111) # def test_two(): #   print(操作222) # # def test_three(login): #   print(登陆后操作333) 运行结果 3、扩展用法多个自定义函数和全局级别展示全局的比如用于登录获取到token其他用例模块就不需要再登录了 1 2 3 4 5 6 7 8 9 10 import pytest def test_one(login):     print(登陆后操作111) def test_two(login,open_page):     print(测试用例2) def test_three(open_page):     print(测试用例3) 运行结果 细心的人应该可以知道测试用例2并没有调用login函数因为前置设置的是共享模式类似全局函数。 参数化区别 参数化应用场景一个场景的用例会用到多条数据来进行验证比如登录功能会用到正确的用户名、密码登录错误的用户名、正确的密码正确的用户名、错误的密码等等来进行测试这时就可以用到框架中的参数化来便捷的完成测试。 参数化 就是数据驱动思想即可以在一个测试用例中进行多组的数据测试而且每一组数据都是分开的、独立的。 unittest参数化其实是ddt叫数据驱动。 pytest数据驱动就是参数化使用pytest.mark.parametrize 1.先看unittest如何进行参数化 1 2 3 4 5 6 7 8 9 test_data [1,2,3] ddt.ddt class Testddt(unittest.TestCase):     ddt.data(*test_data)     def test_001(self,get_data):         print(get_data) if __name__  __main__:     unittest.main() 运行结果 2.pytest中参数化的用法 在测试用例的前面加上 pytest.mark.parametrize(参数名,列表数据) 参数名用来接收每一项数据并作为测试用例的参数。 列表数据一组测试数据。 pytest.mark.parametrize(参数1,参数2,[(数据1数据2),(数据1数据2)]) 示例: pytest.mark.parametrize(a,b,c,[(1,3,4),(10,35,45),(22.22,22.22,44.44)]) def test_add(a,b,c): res a b assert res c 实例 1 2 3 4 5 6 7 pytest.mark.parametrize(data,[1,2,3]) class Testddt(object):     def test_001(self,data):         print(data) if __name__  __main__:     pytest.main([-sv]) 运行结果 这可能是B站最详细的pytest自动化测试框架教程整整100小时全程实战
http://www.hkea.cn/news/14385444/

相关文章:

  • 闽清建设局网站孵化器网站建设
  • 网站建设需要什么岗位网站如何做映射
  • php源码网站建设教程微信朋友圈投放广告
  • 公司网站建设一般多少钱河南省汝州市文明建设门户网站
  • 人才网站运营建设 材料wordpress 全站404
  • 长垣高端建站南京做网站优化的企业
  • 济南市章丘区建设局网站青岛工商注册核名查询系统
  • 新竹网站wordpress 维基
  • 长春 网站建设做网站产生的流量费怎么算
  • 网站建设预算知乎软件app开发公司
  • 知名的网站开发公司亚马逊网站建设案例分析
  • 有免费网站推荐吗wordpress顶部添加图片
  • 安徽网站开发哪家好dw网页设计代码模板源代码
  • 甘肃网站设计公司学校网站建设方案图片
  • 大连旅游网站建设开网店一个月能赚多少钱
  • 申请免费网站空间世界排行榜前十名
  • 做网站需要哪些流程个人建站网站
  • 旅游电子商务网站策划书wordpress 免费 模板
  • 网站建设排名优化公司哪家好北京公交yy优化
  • 网站建设总体流程做爰视频网站有吗
  • 给银行做网站做网店好还是网站好
  • 网站后台添加新闻百度网站地图
  • 成都o2o网站建设网站专业术语中SEO的意思是
  • 网站建设属于服务还是货物用html5做的简单的网站
  • 山西网站建设哪家好网站制作金华公司电话
  • 郑州那个公司做网站好网站建设lnmp
  • 素材网站php程序源码广告设计网站免费
  • 南京哪家网站建设好门户网站的流程
  • 网站怎么做查询系统帝国cms使用教程
  • 网站生成静态页面怎么制作二维码