seldom学习(五):断言和失败截图
2020-05-14 本文已影响0人
一如既往而已
一、 seldom 断言
seldom 提供了更加简单的断言方法。
一共有6种断言方法如下:
# 断言标题是否等于"title"
self.assertTitle("title")
# 断言标题是否包含"title"
self.assertInTitle("title")
# 断言URL是否等于
self.assertURL("url")
# 断言URL是否包含
self.assertInURL("url")
# 断言页面是否存在“text”
self.assertText("text")
# 断言警告是否存在"text" 提示信息
self.assertAlertText("text")
二、用例失败重跑&自动截图
Web自动化测试常常因为各种原因导致用例失败,而重跑机制可以进一步帮我们确定用例确实是失败了。在seldom中设置失败重跑非常简单。
import seldom
class YouTest(seldom.TestCase):
def test_case(self):
"""a simple test case """
self.open("https://www.baidu.com")
self.type(id_="kw", text="seldom")
self.click(css="#su_error")
self.assertTitle("seldom_百度搜索")
if __name__ == '__main__':
seldom.main(path="test_sample.py",
rerun=3,
save_last_run=False,
)
说明:
- rerun: 指定重跑的次数,默认为
0
。 - save_last_run: 是否保存保存最后一次运行结果,默认为
False
。
运行日志:
$ seldom -r run.py
2020-05-14 09:40:31,257 INFO Run the python version:
Python 3.6.9
2020-05-14 09:40:34,209 - INFO - INFO
_ _
| | | |
___ ___ | | __| | ___ _ __ ___
/ __| / _ \| | / _` | / _ \ | '_ ` _ \
\__ \| __/| || (_| || (_) || | | | | |
|___/ \___||_| \__,_| \___/ |_| |_| |_|
-----------------------------------------
@itest.info
2020-05-14 09:40:35,127 - INFO - INFO ✅ Find element: id=kw
2020-05-14 09:40:35,144 - INFO - INFO 🖋 input 'seldom'.
2020-05-14 09:40:35,349 - INFO - INFO ✅ Find element: css selector=#su
2020-05-14 09:40:35,362 - INFO - INFO 🖱 click.
2020-05-14 09:40:36,473 - INFO - INFO 👀 assertIn title: seldom_百度搜索.
.12020-05-14 09:40:37,030 - INFO - INFO ✅ Find element: id=kw
2020-05-14 09:40:37,041 - INFO - INFO 🖋 input 'selenium'.
2020-05-14 09:40:37,178 - INFO - INFO ✅ Find element: css selector=#su
2020-05-14 09:40:37,189 - INFO - INFO 🖱 click.
2020-05-14 09:40:38,295 - INFO - INFO 👀 assertIn title: selenium_百度搜索.
.22020-05-14 09:40:38,841 - INFO - INFO ✅ Find element: id=kw
2020-05-14 09:40:38,852 - INFO - INFO 🖋 input 'unittest'.
2020-05-14 09:40:38,992 - INFO - INFO ✅ Find element: css selector=#su
2020-05-14 09:40:39,005 - INFO - INFO 🖱 click.
2020-05-14 09:40:40,120 - INFO - INFO 👀 assertIn title: unittest_百度搜索.
.32020-05-14 09:40:50,835 - ERROR - ERROR ❌ Find 0 elements through: link text=设置
E2020-05-14 09:40:53,051 - INFO - INFO 👀 assert title: seldom_百度搜索.
.42020-05-14 09:40:53,053 - INFO - INFO generated html file: file:////Users/sleeli/Documents/github/seldom/demo/reports/2020_05_14_09_40_34_result.html
测试报告:

说明:
1、如果只想查看最后一次的结果,save_last_run
设置为True
。
2、查看截图,点击报告中的show
链接。(注意如果报告中fail和error的Screenshots列不显示show截图按钮,请将seldom 卸载后安装github上最新版本即可解决,pip 库中自带的好像不是最新的,建议安装最新的)
pip uninstall seldom
pip install -U git+https://github.com/SeldomQA/seldom.git@master