一、软件与框架介绍
1. Postman
-
读音:['pəʊstmən](剖斯特曼)
-
介绍:API开发与测试的得力助手,通过直观界面发送HTTP请求,查看响应数据。支持环境变量、集合、脚本等功能。
-
主要特点:易于使用的界面、多种认证方式支持、可保存和管理请求、自动化测试功能。
-
应用场景:API开发调试与测试、团队共享API请求和测试用例、构建和验证API文档。
-
学习资源:Postman Docs
2. Fiddler
-
读音:['fɪdlə(r)](菲德勒)
-
介绍:强大的Web调试代理工具,捕获和分析HTTP/HTTPS通信流量,查看请求和响应的详细信息。
-
主要特点:强大的抓包功能、支持断点调试、性能指标分析、丰富的过滤和搜索功能。
-
应用场景:排查Web应用性能问题、调试移动应用与服务器通信、检查网站加载速度。
-
学习资源:Fiddler官网、Bilibili教程
3. JMeter
-
读音:['dʒiː'miːtə(r)](吉米特)
-
介绍:开源的性能测试工具,模拟多用户并发访问,评估Web应用、数据库等性能表现。
-
主要特点:支持多种协议测试、创建复杂测试计划、丰富的监听器收集测试结果、分布式测试支持。
-
应用场景:评估系统高负载稳定性、找出性能瓶颈、优化系统配置和性能。
-
学习资源:JMeter Docs
4. Appium
-
读音:[ə'piːəm](阿皮姆)
-
介绍:开源的移动应用自动化测试框架,支持iOS和Android平台,使用多种编程语言编写测试脚本。
-
主要特点:跨平台支持、支持多种编程语言、与Selenium集成性好、模拟用户操作。
-
应用场景:移动应用功能测试和回归测试、兼容性测试。
-
学习资源:Appium Docs、Bilibili教程
5. Selenium
-
读音:[sə'liːniəm](瑟利尼姆)
-
介绍:Web应用自动化测试工具,支持多种编程语言,模拟用户在浏览器中的操作进行功能测试和回归测试。
-
主要特点:支持多种主流浏览器、丰富的API控制浏览器和操作页面元素、与测试框架结合使用、支持分布式测试和并行执行。
-
应用场景:Web应用自动化功能测试、网页爬虫和数据采集。
-
学习资源:Selenium Docs
6. Unittest
-
读音:[ˌjuːnɪt'test](尤尼泰斯特)
-
介绍:Python内置的单元测试框架,编写和运行单元测试用例,验证代码正确性。
-
主要特点:基于类的测试结构、setUp和tearDown方法、支持测试发现。
-
应用场景:Python代码单元测试、确保代码稳定性和可靠性。
-
学习资源:Python Unittest Docs
7. Requests
-
读音:[rɪ'kwest](瑞奎斯特)
-
介绍:Python的HTTP库,发送HTTP请求,简化与HTTP服务器的交互过程。
-
主要特点:简洁的API设计、自动处理编码、重定向等问题、支持会话保持、处理各种HTTP方法和请求参数。
-
应用场景:开发HTTP接口交互脚本、数据抓取和爬虫开发。
-
学习资源:Requests Docs
二、自动化测试过程
1.分析测试需求
-
目标:清晰明确自动化测试的目标以及需要覆盖的功能点。
-
需求说明书:以需求说明书为基础,精心设计全面的测试需求树。
-
测试覆盖率:精确确定测试的覆盖率,保证所有关键的需求点都能得到充分的测试覆盖。
-
自动化测试粒度:谨慎权衡并确定自动化测试的合适粒度,以达到效率和效果的平衡。
-
筛选测试用例:从众多的测试用例中,精准筛选出适合进行自动化测试的用例。
2.制订测试计划
-
测试对象:清晰界定测试的具体对象。
-
测试目的:明确阐述本次测试的核心目的。
-
测试内容:详细罗列需要测试的具体项目和内容。
-
测试方法:精心选定科学合理的测试方法。
-
测试进度:精准规划每个测试阶段的时间进度要求。
-
资源分配:合理安排测试人员,并确保硬件、数据等各类资源准备充足。
-
管理工具:充分利用禅道等专业的管理工具,对测试进度进行有效的监管和把控。
3.设计测试用例
-
真实使用环境:全面考虑软件在实际应用中的各种使用环境和场景,力保测试用例的有效性和真实性。
-
编写方式:灵活运用 Excel 表格或其他高效的方式来精心编写测试用例。
-
测试用例内容:测试用例应详尽涵盖测试步骤、清晰明确的预期结果等关键要素。
4.搭建测试环境
-
工作并行:在紧锣密鼓开展用例设计工作的同时,有条不紊地着手搭建测试环境。
-
环境内容:包括被测系统的精准部署、测试硬件的合理调用、测试工具的正确安装与精细设置,以及稳定可靠的网络环境的精心布置等。
5.编写并执行测试脚本
-
编写脚本:依据自动化测试用例的复杂程度和问题的难易级别,有的放矢地编写相应的测试脚本。
-
工具选择:巧妙运用 Selenium、miniprogram-automator 等功能强大的自动化测试工具来编写和执行测试脚本。
-
反复测试:在测试脚本编写完成后,不厌其烦地进行反复测试,以确保脚本的准确无误。
6.分析测试结果、记录测试问题
-
分析结果:及时且深入地分析自动化测试的结果。
-
记录问题:一丝不苟地记录测试过程中所发现的各类问题。
-
提交问题:一旦确认软件缺陷真实存在,迅速而准确地记录问题,并及时提交给开发人员进行修复。
-
非缺陷处理:若所发现的并非系统缺陷,全面检查自动化测试脚本或测试环境,以排查潜在的问题。
7.跟踪测试 Bug
-
记录 Bug:将测试过程中所记录的 Bug 精准无误地录入到缺陷管理工具中。
-
跟踪处理:定期对 Bug 进行跟踪和处理,确保问题得到妥善解决。
-
回归测试:在开发人员完成修复后,严谨认真地对问题执行回归测试,以验证修复效果。
8.自动化脚本的维护
-
系统变更:倘若系统发生了重大变更,及时对自动化测试脚本和相关的文档进行全面维护,以适应变更后的系统新需求。