Mercari:我们通过采用这10种现代测试技术,加快交付周期、提升软件质量

884 篇文章 2 订阅
822 篇文章 0 订阅

2024软件测试面试刷题,这个小程序(永久刷题),靠它快速找到工作了!(刷题APP的天花板)_软件测试刷题小程序-CSDN博客文章浏览阅读3.4k次,点赞86次,收藏15次。你知不知道有这么一个软件测试面试的刷题小程序。里面包含了面试常问的软件测试基础题,web自动化测试、app自动化测试、接口测试、性能测试、自动化测试、安全测试及一些常问到的人力资源题目。最主要的是他还收集了像阿里、华为这样的大厂面试真题,还有互动交流板块……_软件测试刷题小程序​编辑https://blog.csdn.net/AI_Green/article/details/134931243?spm=1001.2014.3001.5502https://blog.csdn.net/AI_Green/article/details/134931243?spm=1001.2014.3001.5502​编辑https://blog.csdn.net/AI_Green/article/details/134931243?spm=1001.2014.3001.5502​编辑https://blog.csdn.net/AI_Green/article/details/134931243?spm=1001.2014.3001.5502​编辑https://blog.csdn.net/AI_Green/article/details/134931243?spm=1001.2014.3001.5502​编辑https://blog.csdn.net/AI_Green/article/details/134931243?spm=1001.2014.3001.5502​编辑https://blog.csdn.net/AI_Green/article/details/134931243?spm=1001.2014.3001.5502https://blog.csdn.net/AI_Green/article/details/134931243?spm=1001.2014.3001.5502https://blog.csdn.net/AI_Green/article/details/134931243?spm=1001.2014.3001.5502​编辑https://blog.csdn.net/AI_Green/article/details/134931243?spm=1001.2014.3001.5502https://blog.csdn.net/AI_Green/article/details/134931243?spm=1001.2014.3001.5502https://blog.csdn.net/AI_Green/article/details/134931243?spm=1001.2014.3001.5502​编辑https://blog.csdn.net/AI_Green/article/details/134931243?spm=1001.2014.3001.5502https://blog.csdn.net/AI_Green/article/details/134931243?spm=1001.2014.3001.5502https://blog.csdn.net/AI_Green/article/details/134931243?spm=1001.2014.3001.5502​编辑https://blog.csdn.net/AI_Green/article/details/134931243?spm=1001.2014.3001.5502https://blog.csdn.net/AI_Green/article/details/134931243?spm=1001.2014.3001.5502icon-default.png?t=N7T8https://blog.csdn.net/AI_Green/article/details/134931243?spm=1001.2014.3001.5502

大家好!我是Udit,Mercari的工程经理 (QA)。

在不断发展的软件开发领域,软件测试的作用变得越来越重要。随着敏捷和 DevOps 方法的快速采用,传统的测试方法面临着跟上当今快节奏开发周期的需求的挑战。因此,测试技术发生了重大演变,转向强调效率、可扩展性和自动化的现代方法。

Mercari 是日本领先的电子商务平台,采用了先进的测试技术,事实证明这些技术有助于提高其软件产品的质量和可靠性。在这篇文章中,我们将深入研究其中一些先进技术,包括 API 测试、前端测试、dogfooding、发布测试等方面的进步。通过这些探索,重点介绍 Mercari 的创新测试方法如何极大地促进了软件解决方案质量的提高。

让我们一一深入研究一些现代和尖端的测试技术!

01 左移测试

左移测试涉及将测试活动移至软件开发生命周期的早期,旨在尽快检测和解决缺陷。这种方法在敏捷和 DevOps 方法中至关重要,因为它具有以下优点:

图片

  1. 降低成本:早期缺陷检测可减少与后期修复问题相关的费用。

  2. 更高的效率:能够更快地识别和解决问题,从而实现更高效的开发周期。

  3. 更高的质量:专注于尽早预防缺陷,从而提高整体软件质量。

  4. 竞争优势:允许更快、更可靠的软件交付,提供市场竞争优势。

示例包括单元测试、集成测试和代码审查,确保稳健且高质量的软件开发。开发/QA 启动、开发人员自检以及开发人员运行健全性测试等其他实践进一步增强了我们的测试流程。

02 测试自动化

测试自动化是现代软件开发不可或缺的一部分,可以加快测试流程并实现更快的反馈循环。这种方法利用专门的工具和框架来自动执行测试用例,减少对手动干预的依赖并提高测试效率。

在 Mercari,我们在测试自动化工作中遵循类似的原则和实践。这包括:

图片

  1. 咨询:提供有关开发定制测试自动化策略和实施最佳实践的专家建议。

  2. 工具选择:根据应用程序类型、技术堆栈和团队专业知识等因素,帮助选择合适的测试自动化工具和框架。示例包括基于 XCUITest、Playwright 和 Jetpack Compose 的框架。

  3. 自动化战略和规划:制定符合业务目标和项目要求的全面自动化战略。

  4. QE框架和平台:实施质量工程框架和平台,以简化测试自动化计划并确保项目之间的一致性。

  5. 测试用例开发:创建健壮且可维护的测试用例,涵盖应用程序的各种功能和非功能方面。

  6. 执行和维护:建立自动化测试执行管道和流程以进行持续测试,同时提供测试自动化资产的持续维护和优化。

03 持续测试

持续测试在 Mercari 的软件开发过程中至关重要,可以无缝集成到我们的 CI/CD 管道中。它确保整个软件交付过程的质量,自动执行从代码提交到部署的测试执行。好处是显着的,包括更快的发布周期、降低生产缺陷的风险以及增加对代码更改的信心。通过自动化测试执行,团队可以及时收到有关代码质量的反馈,从而使他们能够在开发过程的早期解决问题。以下是持续测试的一些关键方面:

图片

  • 持续测试无缝集成到我们的 CI/CD 管道中。

  • 它确保软件交付过程每个阶段的质量。

  • 这样做的好处包括更快的发布周期和降低生产缺陷的风险。

  • 持续测试可以增强对代码更改的信心并防止代价高昂的停机。

  • 通过自动化测试执行,我们的团队可以获得有关代码质量的及时反馈。

04 API测试

API 测试是 Mercari 软件质量保证的一部分,可确保 API 的功能、可靠性和性能,这对于现代软件应用程序至关重要。通过严格的测试,团队验证 API 是否能够无缝运行、准确处理不同的请求,并在不同的条件下表现出色。以下是对 API 测试的深入探索:

图片

  1. 重要性:API 测试对于验证 API 是否满足其功能要求、遵守行业标准以及与软件生态系统的其他组件无缝交互至关重要。

  2. 工具和技术:有多种工具和技术可用于 API 测试,包括 Postman、REST Assured 和 Swagger。这些工具提供了高效创建、管理和执行 API 测试的功能。

  3. 公司示例:在我们公司内,我们通常使用 Jest 和基于 Typescript 的框架进行 API 测试,提供强大的功能并确保全面的测试覆盖率。此外,还使用了基于Go的框架,进一步增强了我们的测试能力。

  4. 测试场景:API 测试涵盖广泛的场景,包括端点验证、数据完整性检查、功能测试和处理错误响应。通过模拟不同类型的请求并评估 API 响应,团队可以在潜在问题影响最终用户之前识别并解决它们。

API 测试是 Mercari 软件测试策略不可或缺的一部分,可确保 API 发挥最佳功能并无缝集成到软件生态系统中。

05 前端测试

前端测试是 Mercari 以用户为中心的方法的关键,可确保跨各种设备和平台提供无缝且直观的体验。通过严格测试前端组件,团队可以识别并解决与可用性和性能相关的问题。以下是前端测试的详细介绍:

图片

  1. 意义:前端测试在验证用户界面的功能和外观、确保它们满足设计规范和用户期望方面发挥着至关重要的作用。通过进行彻底的前端测试,团队可以在开发过程的早期发现并解决问题,从而最大限度地降低缺陷影响生产的风险。

  2. 框架和工具:有几个前端测试框架和工具可用于促进测试过程。示例包括用于测试 iOS 应用程序的 XCUITest、用于跨浏览器 Web 测试和自动化的 Playwright 以及用于 Android UI 测试的 Jetpack Compose UI。这些工具为开发人员和 QA 工程师提供了有效编写、执行和维护前端测试的必要功能。

  3. 测试场景:前端测试涵盖多种场景,包括UI验证、跨浏览器测试和端到端(E2E)测试。UI 验证涉及验证用户界面是否正确呈现并显示预期的内容和元素。跨浏览器测试确保 Web 应用程序在不同浏览器和设备上一致运行,而 E2E 测试则涉及从头到尾测试整个应用程序工作流程,模拟真实的用户交互和场景。

通过利用前端测试框架和工具并采用整体测试方法,Mercari 团队提高了前端组件的质量和可靠性,最终为客户带来了无缝且令人愉悦的用户体验。

06 探索性测试

探索性测试是 Mercari 采用的一种动态且创造性的软件测试方法,涉及同步测试设计和执行。它使质量工程师能够实时探索被测应用程序,发现缺陷并识别可能逃避脚本测试方法的可用性问题。以下是探索性测试的详细介绍:

图片

  1. 重要性:探索性测试对于发现脚本测试用例可能无法涵盖的隐藏缺陷和可用性问题至关重要。与预定义测试用例的传统测试方法不同,探索性测试鼓励质量工程师跳出框框思考,遵循直觉,有机地探索应用程序。这种方法通常会发现关键缺陷,并提供有关用户体验的宝贵见解。

  2. 对脚本测试的补充:虽然脚本测试提供了结构和可重复性,但探索性测试通过允许质量工程师调查测试用例设计期间可能未考虑的应用程序领域来对其进行补充。通过结合这两种方法,团队可以实现全面的测试覆盖并发现更广泛的问题。

  3. 有效实践:有效的探索性测试需要仔细的规划和执行。测试章程概述了要探索的应用程序领域,可以帮助集中测试工作并确保彻底覆盖。时间盒或为测试会话设置特定的时间限制有助于防止质量工程师陷入细节并鼓励快速探索。此外,错误倡导(测试人员倡导发现的缺陷的重要性)有助于确保关键问题得到及时解决。

通过将探索性测试集成到测试策略中,Mercari 团队提高了软件质量、提高了用户满意度并降低了发布有缺陷产品的风险。这种方法培养质量工程师的创造力和批判性思维,从而产生更强大和可靠的应用程序。

07 内部测试

Dogfooding,也称为吃自己的狗粮或自托管,是 Mercari 实践的一种测试技术,开发人员和其他利益相关者在现实场景中使用自己的软件。以下是对狗食测试的更深入探讨:

图片

  1. 简介:内部测试涉及使用您在组织内开发的软件产品。Dogfooding 不是仅仅依赖传统的测试方法,例如自动和手动测试,而是鼓励开发人员、质量工程师和其他团队成员成为自己产品的最终用户。这种方法使他们能够亲身体验软件,识别可用性问题,并获得有关其在现实环境中的性能和功能的宝贵见解。

  2. 好处:Dogfooding 为组织提供了多种好处,包括有机会收集内部用户的即时反馈、在开发过程的早期识别可用性问题以及在现实场景中验证软件的功能。通过使用自己的产品,团队可以更好地了解用户体验,预测用户需求,并就产品改进和增强做出明智的决策。此外,内部测试培育了持续改进的文化,并鼓励组织内不同团队之间的协作和沟通。

  3. 示例和最佳实践:许多成功的产品公司都将内部测试作为核心测试策略,员工在内部测试软件的预发布版本,以识别错误并在向公众发布之前提供反馈。为了有效地实施内部测试,组织应该为使用自己的产品建立明确的指南和程序,为用户提供培训和支持,并优先考虑反馈收集和分析。

通过将内部测试纳入 Mercari 的测试流程中,我们提高了软件质量、提高了用户满意度并加速了创新。这种测试技术使我们能够获得对产品的宝贵见解,及早发现问题,并为客户提供更好的体验。

08 发布测试

发布测试在确保软件发布的稳定性和可靠性方面发挥着至关重要的作用,特别是在多个团队或公司为单个应用程序做出贡献的情况下。这种情况带来了协调来自不同实体(例如 Mercari、Merpay 和 Mercoin)的更改的挑战,所有实体都对我们的应用程序进行修改并同时发布。以下是对发布测试的更深入探索:

图片

  • 冒烟测试:初步一轮测试,旨在快速识别软件构建中的主要问题或阻碍因素。它验证应用程序的基本功能是否按预期工作。

  • 关键业务用例或必须通过的场景:验证对软件核心功能和用户体验至关重要的基本业务工作流程或必须通过的场景。

  • 端到端 (E2E) 测试:包含端到端测试场景,模拟跨多个组件或系统的真实用户交互,以验证软件在各种条件下的行为。

  • 回归测试:一种全面的测试方法,可在进行更改或增强后验证软件的现有功能。它确保新的更新不会对现有功能产生不利影响。

  1. 简介:发布测试是软件开发生命周期中的关键阶段,其中重点从单个功能测试转移到验证整个软件产品以准备部署。其主要目标是确保软件在发布给最终用户之前满足质量标准和功能要求。

  2. 发布测试策略:发布测试包括验证软件的功能、性能和可用性的各种策略。这些策略包括:

  3. 自动化:自动化发布测试流程对于简化部署和最大限度地减少停机时间至关重要。通过自动化重复性任务(例如测试执行、回归测试和环境设置),组织可以加快发布周期并提高整体效率。自动化还有助于提高测试覆盖率、减少手动错误并实现持续集成和持续交付 (CI/CD) 管道。

通过集成强大的发布测试策略并利用自动化工具,我们确保其软件版本的质量和可靠性。这种主动方法可以降低发布后问题的风险,并提高客户对产品的满意度和信任度。

09 生产测试

生产测试确保软件在现实环境中的稳定性和性能,包括健全性检查和基本性能评估。

  1. 简介:生产测试,也称为部署后测试,涉及在实时生产环境中验证软件应用程序的功能、性能和可靠性。与在测试或登台环境中进行的预生产测试不同,生产测试的重点是确保软件在现实条件下按预期运行。

  2. 生产健全性测试:健全性测试也称为冒烟测试,在生产环境中进行,以快速验证基本功能并确认系统在部署后是否可运行。这些测试通常涵盖关键用例和关键功能,以确保应用程序的基本功能完好无损。示例包括用户身份验证、数据检索和基本导航流程。

  3. 基本性能检查:生产测试还包括基本性能检查,以评估应用程序在典型用户负载下的响应能力和稳定性。这些检查可能涉及监控关键性能指标 (KPI),例如响应时间、吞吐量和错误率,以识别任何性能瓶颈或系统性能下降。虽然更全面的性能测试可能会在测试过程的早期进行,但对生产的基本性能检查有助于确保应用程序在实时环境中满足可接受的性能标准。

  4. 重要性:生产测试对于检测可能仅在实时生产环境中出现的问题至关重要,例如配置错误、兼容性问题或与其他系统的意外交互。通过在生产环境中进行彻底的测试,组织可以及时发现并解决问题,最大限度地减少停机时间,并保持积极的用户体验。

  5. 持续改进:生产测试不是一次性事件,而是在整个软件生命周期中持续进行的过程。通过持续监控和测试生产环境,组织可以确定需要改进的领域、实施增强功能并提供可靠且高质量的用户体验。

在 Mercari 实施强大的生产测试实践可确保我们的软件应用程序在现实场景中以最佳状态运行,从而提高用户满意度并保持业务连续性。

10 发布后支持

软件版本部署后,重点转移到发布后测试支持,这是一个关键阶段,旨在确保软件的持续功能、稳定性和性能。以下是所涉及的关键职责的更详细细分:

图片

  1. 持续监控:实施强大的监控解决方案来跟踪系统性能、检测异常并实时识别潜在问题,包括崩溃管理活动,以迅速解决任何不可预见的事件。

  2. 客户询问处理:及时处理和解决客户对新发布的软件的询问和疑虑。这包括提供及时响应、提供解决方案或变通办法、确保客户满意度,以及收集客户之声 (VoC) 反馈以收集见解以供未来改进。

  3. 问题处理和验证:通过调查根本原因、实施修复并验证其有效性来积极管理报告的问题。这涉及与开发和运营团队的协作,以有效地确定问题的优先顺序并解决问题。

  4. 支持修补程序部署:根据需要开发和部署修补程序,以解决发布后发现的关键问题或漏洞。这可能涉及加快测试和发布周期,以尽量减少对用户的干扰并保持软件的完整性。

  5. 性能监控和优化:进行持续的性能测试和优化工作,以确保软件持续满足性能要求和用户期望。这包括识别性能瓶颈、优化代码以及根据需要扩展资源以保持最佳性能水平。

通过在 Mercari 主动解决发布后测试支持活动,我们有效地降低了风险,保持用户满意度,并确保我们的软件产品在生产环境中的长期成功。

结论

总之,Mercari 采用的现代软件测试技术涵盖了一系列旨在提高其软件产品的质量、可靠性和性能的方法和实践。从左移测试到持续集成和部署,从 API 和前端测试到探索性和生产测试,每种方法在确保软件满足用户不断变化的需求和期望方面都发挥着至关重要的作用。通过采用这些技术,Mercari 加快了交付周期、降低了成本并提供了卓越的用户体验,最终推动业务在当今的竞争格局中取得成功。

行动吧,在路上总比一直观望的要好,未来的你肯定会感谢现在拼搏的自己!如果想学习提升找不到资料,没人答疑解惑时,请及时加入群: 759968159,里面有各种测试开发资料和技术可以一起交流哦。

最后: 下方这份完整的软件测试视频教程已经整理上传完成,需要的朋友们可以自行领取【保证100%免费】

​​​软件测试面试文档

我们学习必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有字节大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。

在这里插入图片描述

在这里插入图片描述

  • 29
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值