活动地址:CSDN21天学习挑战赛
学习的最大理由是想摆脱平庸,早一天就多一份人生的精彩;迟一天就多一天平庸的困扰。各位小伙伴,如果您:
想系统/深入学习某技术知识点…
一个人摸索学习很难坚持,想组团高效学习…
想写博客但无从下手,急需写作干货注入能量…
热爱写作,愿意让自己成为更好的人…
…
欢迎参与CSDN学习挑战赛,成为更好的自己,请参考活动中各位优质专栏博主的免费高质量专栏资源(这部分优质资源是活动限时免费开放喔~),按照自身的学习领域和学习进度学习并记录自己的学习过程。您可以从以下3个方面任选其一着手(不强制),或者按照自己的理解发布专栏学习作品,参考如下:
学习笔记
unittest断言
基本断言方法:
- assertLocation(判断当前是在正确的页面)
- assertTitle(检查当前页面的 title 是否正确)
- assertValue(检查 input 的值, checkbox 或 radio,有值为”on”无为”off”)
- assertSelected(检查 select 的下拉菜单中选中是否正确)
- assertSelectedOptions(检查下拉菜单中的选项的是否正确)
- assertText(检查指定元素的文本)
- assertTextPresent(检查在当前给用户显示的页面上是否有出现指定的文本)
- assertTextNotPresent(检查在当前给用户显示的页面上是否没有出现指定的文本)
- assertAttribute(检查当前指定元素的属性的值)
- assertTable(检查 table 里的某个 cell 中的值)
- assertEditable(检查指定的 input 是否可以编辑)
- assertNotEditable(检查指定的 input 是否不可以编辑)
- assertAlert(检查是否有产生带指定 message 的 alert 对话框)
- verifyTitle (检查预期的页面标题)
- verifyTextPresent (验证预期的文本是否在页面上的某个位置)
- verifyElementPresent(验证预期的UI元素,它的HTML标签的定义,是否在当前网页上)
- verifyText(核实预期的文本和相应的HTML标签是否都存在于页面上)
- verifyTable(验证表的预期内容)
- waitForPageToLoad(暂停执行,直到预期的新的页面加载)
- waitForElementPresent (等待检验某元素的存在。为真时,则执行)
unittest执行测试用例
执行方法:
方法1:unittest.main()方法:会将所有存在unittest方法的代码全部执行
执行方法2:加入容器中执行:
if __name__ == '__main__':
#unittest.main()
suite = unittest.TestSuite()
suite.addTest(demo1("test_demo_case0"))
unittest.TextTestRunner().run(suite)
执行方法3:可以同时测试多个类
suite = unittest.TestLoader().loadTestsFromTestCase(demo)
suniteall = unittest.TestSuite([suite])
unittest.TextTestRunner().run(suniteall)
执行方法4:匹配摸个目录下所有以test开头py文件,执行这些文件下所有测试用例
discover = unittest.defaultTestLoader.discover("./", 'test*.py')
unittest.TextTestRunner().run(discover)
测试用例执行过程:
1:先写好testcase
2:然后由TestLoader加载testcase到TestSuite
3:然后有TestRunner运行TestSuite
4:运行的结果保存在TextTestRunner中
5:整个过程集成在unittest.main模块中
可以使用htmltestrunner_py3来执行测试用例后生成测试报告,存在框架可以执行使用
githib地址:github.com