一.概述
Python是一种跨平台计算机编程语言,以代码概述、通俗易懂、可读性、ssdhm、可移植性、开源库丰富等特点,迅速成为深受广大用户欢迎的用途广泛的语言是一种高度组合了说明、编译性、交互性、面向对象的脚本语言。 最初是为了编写自动化脚本(shell )而设计的,随着版本的更新和语言新功能的添加,经常被用于开发独立的大型项目。
软件自动化测试是测试工作的一部分,是对手工测试的补充,可以避免工作重复,提高测试效率,保证每次测试的一致性和重复性,解决测试与开发之间的矛盾。
二.测试框架和工具
1.pytest自动化测试框架
pytest是一个非常成熟的全功能python测试框架,支持简单的单元测试和复杂的功能测试,还可以用于selenium/appium等自动化测试、接口自动化测试。
pytest识别所有Test*类中的所有Test*方法,并且测试类及其父类中不能有init方法。 pytest框架运行用例时先运行setup*的所有方法,退出时运行teardown*的所有方法。 有关pytest的详细解读,请访问https://www.cn blogs.com/yoyoketang/tag/py test /
2 .赛扬自动化测试框架
selenium是web APP应用的自动化测试工具,同时也是强大的爬虫工具。 selenium测试直接在浏览器中运行,可以避免JS动态加载导致Web数据丢失,就像真正的用户在操作一样。 selenium通信流程如下:
selenium可以在Windows、Linux和MAC OS的Internet Explorer、Chrome和Firefox上运行。 其他测试工具覆盖不了这么多平台。 使用selenium和在浏览器中运行测试还有很多其他好处。
(1) .通过编写模仿用户操作的selenium测试脚本,可以从最终用户的角度测试APP应用程序。
)2) .在不同的浏览器上运行测试,更容易发现浏览器的不兼容性。 selenium的核心也称为browser bot,是用JavaScript编写的。 这样,您就可以在支持的浏览器中运行测试脚本。 browser bot运行从HTML表布局或以支持的编程语言编写的测试脚本中接收到的命令。
3 .请求库
requests是python实现的易于使用的HTTP库,是python的第三方库,在pip上安装和使用比request、urllib更简单、更高效。 requests可轻松操作爬行器,使您可以执行cookie、登录验证和代理设置等操作。 requests的缺点是,JS动态加载的网页往往得不到良好的爬网效果,因此在进行自动化测试时往往与之配套使用,提高程序的可靠性。
4.allure
Allure Framework是一个灵活、轻量级的多语言测试报告工具。 除了以简洁的web报告格式非常简洁地显示测试的内容之外,还允许所有参与开发过程的人从日常工作中提取最大的有用信息。 使用allure pytest,可以高效准确地完成自动化测试并生成测试报告。
allure的一般性评论如下:
@allure.epic(epic描述敏捷中的概念,定义叙事诗,下面是feature
@allure.feature ()模块名功能点的说明,下面是story
@allure.story ()用户故事用户故事,下面是title
@allure.title (用例标题)重命名用例标题html报告
@allure.testcase ()测试用例链接到的功能测试用例系统中的case
@allure.issue ()启用缺陷的缺陷管理系统中的链接
@allure.description ()用例描述编写测试用例
@allure.step ()操作步骤测试用例的步骤
@allure.severity ()用例级blocker,critical,normal,minor,trivial
@allure.link (链接定义链接并在测试报告中显示)
@allure.attachment (将附件添加到附件报告