GitHub 上发现的一个自动化测试框架,封装的很厉害,对小白很友好,体验了下 demo 很不错,先看看下面封装好的 po 模式,很简洁。
"""import seldom
from seldom import Seldom
from poium import Page, Element
class BaiduPage(Page):
"""baidu page"""
search_input = Element(id_="kw")
search_button = Element(id_="su")
class BaiduTest(seldom.TestCase):
"""Baidu search test case"""
def test_case(self):
"""
A simple test
"""
page = BaiduPage(Seldom.driver)
# page = BaiduPage(self.driver)
page.get("https://www.baidu.com")
page.search_input = "seldom"
page.search_button.click()
self.assertTitle("seldom_百度搜索")
if __name__ == '__main__':
seldom.main(browser='chrome', debug=True)
上面可以看出来,简洁的不能再简洁。
特点:
-
提供更加简单API编写自动化测试
-
提供脚手架,快速生成自动化测试项目
-
全局启动和关闭浏览器,减少浏览器的启动次数
-
提供支持多种数据文件参数化
-
支持用例失败/错误重跑
-
支持生成HTML/XML测试报告
-
支持HTTP接口测试 (v 2.0)
安装:
pip install seldom
创建项目:
seldom -project mypro
目录结构如下:
mypro/├── test_dir/
│ ├── test_sample.py
├── test_data/
│ ├── data.json
├── reports/
└── run.py
-
test_dir/ 测试用例目录。
-
test_data/ 测试数据文件目录。
-
reports/ 测试报告目录。
-
run.py 运行测试用例主文件。
运行项目效果:
python3 run.py
__ __
________ / /___/ /___ ____ ____
/ ___/ _ \/ / __ / __ \/ __ ` ___/
(__ ) __/ / /_/ / /_/ / / / / / /
/____/\___/_/\__,_/\____/_/ /_/ /_/ v2.3.0
-----------------------------------------
2021-10-12 00:47:33 [INFO] 📖 https://www.baidu.com
2021-10-12 00:47:37 [INFO] ✅ Find 1 element: id=kw , input 'seldom'.
2021-10-12 00:47:38 [INFO] ✅ Find 1 element: css selector=#su , click.
2021-10-12 00:47:40 [INFO] 👀 assertIn title: seldom_百度搜索.
2021-10-12 00:47:40 [INFO] 📖 https://www.baidu.com
2021-10-12 00:47:41 [INFO] ✅ Find 1 element: id=kw , input 'poium'.
2021-10-12 00:47:42 [INFO] ✅ Find 1 element: css selector=#su , click.
2021-10-12 00:47:43 [INFO] 👀 assertIn title: poium_百度搜索.
2021-10-12 00:47:43 [INFO] 📖 https://www.baidu.com
2021-10-12 00:47:44 [INFO] ✅ Find 1 element: id=kw , input 'HTMLTestRunner'.
2021-10-12 00:47:45 [INFO] ✅ Find 1 element: css selector=#su , click.
2021-10-12 00:47:46 [INFO] 👀 assertIn title: HTMLTestRunner_百度搜索.
2021-10-12 00:47:46 [INFO] 📖 http://www.itest.info
2021-10-12 00:47:53 [INFO] 👀 assertIn url: http://www.itest.info/.
2021-10-12 00:47:53 [PRINT] generated html file: file:///D:\mypro\reports\2021_10_12_00_47_32_result.html
2021-10-12 00:47:53 [PRINT] generated log file: file:///D:\mypro\reports\2021_10_12_00_47_32_log.log
.1.2.3.4
查看报告:
感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:
这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你!有需要的小伙伴可以点击下方小卡片领取