建筑网建设通网站作用是什么意思,财政局网站开发合同,一般通过 什么意思,ps软件下载破解版前言
说到配置#xff0c;大家可能想到的是不经常更改的内容#xff0c;比如Django里的settings.py文件#xff0c;或者我们做自动化的时候#xff0c;把测试环境的域名和正式环境的域名放到一个配置文件里#xff0c;所有的接口都从这个文件里读取。这样#xff0c;如果…前言
说到配置大家可能想到的是不经常更改的内容比如Django里的settings.py文件或者我们做自动化的时候把测试环境的域名和正式环境的域名放到一个配置文件里所有的接口都从这个文件里读取。这样如果有一天我们的域名变了我们只需要更改配置里的域名就可以了。pytest里也有几个配置文件。
pytest.inipytest的主配置文件可以改变pytest的默认行为有很多可配置的选项。 conftest.py是本地的插件库其中的hook函数和fixture将作用于该文件所在的目录以及所有子目录。init.py每个测试子目录都包含该文件时那么在多个测试目录中可以出现同名测试文件。 tox.ini它与pytest.ini类似只不过是tox的配置文件你可以把pytest的配置都写在tox.ini里这样就不用同时使用tox.ini和pytest.ini两个文件
本文只谈pytest.ini的使用 pytest.ini的内容构成
先看一个简单的示例这个只展示了配置文件中的三个配置项 配置项markers
先谈markers它的作用是做注册标记防止拼写错误。比如把pytest.mark.smoke拼成pytest.mark.somke默认情况下。这不会引起程序错误。pytest会以为这是你创建的另一个标记。为了避免拼写错误。可以在pytest.ini文件里注册标记 1 2 3 4 [pytest] markers smoke: Run the smoke test functions for tasks project get: Run the test functions that test tasks.get() 1 2 3 4 5 6 7 8 9 10 11 12 13 import pytest def inc(x): return x 1 pytest.mark.smoke def test_answer(): assert inc(3) 55 pytest.mark.post def test_answer1(): assert inc(4) 5
标记注册好后可以通过pytest --markers来查看 如果我们在执行时故意写错mark标签如把smoke故意写错了也没有报错只是给我们一个警告只需要我们在ini里注册下就不会有警告了 如果使用了–strict选项遇到拼写错误的标记或未注册的标记就会报错。并且在pytest.ini里注册了标记但是没有函数使用该标记也会报错 配置项testpaths
testpaths指示pytest去哪里访问。testpaths是一系列相对于根目录的路径用于限定测试用例的搜索范围。只有在pytest未指定文件目录参数或测试用例标识符时该选项才有作用 1 2 [pytest] testpaths test_001 配置项addopts
更改默认命令行选项
pytest用命令行运行时有时候需要经常要用到某些参数又不想重复输入这时可以使用pytest.ini文件里的addopts设置 1 2 [pytest] addopts-vqs
编写的用例 1 2 3 4 5 6 7 8 9 10 from selenium import webdriver def testOpenUrl(): try: driver webdriver.Firefox() # 打开浏览器 driver.get(http://www.baidu.com) # 访问百度 title driver.title # 获取百度首页的title assert title 百度一下你就知道 # 断言 except AssertionError: raise AssertionError(断言失败!) driver.quit()
-vpytest -v 说明可以输出用例更加详细的执行信息比如用例所在的文件及用例名称等 -spytest -s 说明输入我们用例中的调式信息比如print的打印信息等我们在上面用例8行加上一句 print(driver.title)我们再运行一下我们的用例看看 -mpytest -m ”标记“ 说明执行特定的测试用例。修改下上面的用例代码 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 from selenium import webdriver import pytest pytest.mark.run_this_testcase #添加mark的标签 def testOpenUrl(): try: driver webdriver.Firefox() # 打开浏览器 driver.get(http://www.baidu.com) # 访问百度 title driver.title # 获取百度首页的title print(driver.title) assert title 百度一下你就知道 # 断言 except AssertionError: raise AssertionError(断言失败!) driver.quit() def testBaidu(): driver webdriver.Firefox() # 打开浏览器 driver.get(http://www.baidu.com) # 访问百度 title driver.title # 获取百度首页的title assert title 百度一下你就知道 # 断言 -qpytest -q 说明简化控制台的输出可以看出输出信息和上面的结果都不一样 下图中有两个…点代替了pass结果 -kpytest -k “关键字” 说明执行用例包含“关键字”的用例 –tbstyle屏蔽测试用例执行输出的回溯信息可以简化用例失败时的输出信息。style可以是 onlineshort具体区别请自行体验。如使用pytest --tbno 总结
感谢每一个认真阅读我文章的人
作为一位过来人也是希望大家少走一些弯路如果你不想再体验一次学习时找不到资料没人解答问题坚持几天便放弃的感受的话在这里我给大家分享一些自动化测试的学习资源希望能给你前进的路上带来帮助。 软件测试面试文档
我们学习必然是为了找到高薪的工作下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料并且有字节大佬给出了权威的解答刷完这一套面试资料相信大家都能找到满意的工作。 视频文档获取方式 这份文档和视频资料对于想从事【软件测试】的朋友来说应该是最全面最完整的备战仓库这个仓库也陪伴我走过了最艰难的路程希望也能帮助到你以上均可以分享点下方小卡片即可自行领取。