测试的左移

9 篇文章 0 订阅

玩转API

快速开启 - ApiHug如何在15分钟内,使用 ApiHug 启动一个API开发项目.icon-default.png?t=N7T8https://apihug.com/zhCN-docs/start

📐设计先行

通过统一的API 设计元语(DSL, domain specific language), 让API 设计更语言化(Describe);实现高度的一致化,和高复用。

📑协议驱动

OAS (OpenAPI specification), 是 ApiHug世界的 "金科玉律", 严格保证定义 ↔ 实现之间同构(isomorphism)态射。

🗺️单一信任源

实现 API 从:蓝图→施工→测试→落地,不走样, 不变形,不改味。极致沟通效率和极低信任成本。

❤️ 开发同理心

置身于多种角色,感同身受,在快和慢,现在和将来,个体和团队上综合平衡,极具同理心是ApiHug 人文基础,她不仅仅是一段代码,一个工具,一种方式。

什么是测试左移

"左侧",即测试发生在软件开发生命周期的早期阶段。

传统的软件开发方法顺序进行,大部分测试都被安排在项目的最后阶段。这种技术意味着更昂贵的返工和重新安排日程。

因此"左移",使得测试团队在软件开发的最初阶段就参与进来。

一位理想主义者对于测试的设想-CSDN博客

一入测试深似海,不如继续去搬砖-CSDN博客

可能好处

  1. 早期错误检测:检测错误,在错误变得严重、修复成本和时间过高之前解决它们;

  2. 降低成本:及早发现和修复缺陷可以防止返工,省时间和成本;

  3. 提高质量:减少代码设计返工,以及修复和补丁,提高最终产品的质量,提高客户满意度。使代码易于维护。

  4. 改善时间管理:简化测试,更严格地按照预定的计划进行工作(工具和流程 > 人治,PS 1个好机制胜过10000遍日常管理 ),避免延期交付。

准备

  1. 统一编码标准:确保实践的一致性,将出错的机会降至最低。

  2. 早期集成测试:在项目的早期阶段实施测试,可以作为敏捷方法的一部分,也可以通过为每个功能编写单元测试来实现。

  3. 测试自动化:使用自动化测试工具来进行回归测试,并快速反馈有关代码稳定性的问题。

图片

这部分作为,测试部分第一部分思想准备:

在现有测试成熟套件上, 使这个理想变成可能:

  1. BDD工具:Jbehave、Cucumber和SpecFlow;等以DSL方式编写测试用例。减少多方对产品需求误解。

  2. 静态代码分析工具:SonarQube、ESLint和Checkstyle可以在开发过程的早期分析源代码中的错误和漏洞。

  3. 持续集成(CI)工具:Jenkins、Azure DevOps管道、GitLab管道等可实现构建、测试和部署流程的自动化,确保在集成前对代码变更进行彻底测试。

  4. 自动化测试框架:Selenium、Playwrite、JUnit/TestNG和pytest可以进行各种类型的自动化测试,包括单元测试、集成测试和端到端测试。

  5. 安全扫描工具:OWASP ZAP、Burp Suite和Nessus帮助识别安全漏洞,使团队能够及早解决潜在威胁。

是否需要AI 加持呢?稍微欠缺点,特别是正对特定的领域, RAG, Prompt 难以达到最总的丝滑程度, 这个方向上 thoughworks 的 autoDEV 探索已经比较前沿,可参考;在约束的范围和有限问题解决方案上是可行的。 

底层语言 ⇌ 高级语言  ⇌  DSL ⇌ 自然语言

图片

参考

  1. https://ambahera.medium.com/tool-stack-for-the-shift-left-testing-approach-d10db80bded3

  2. https://martinfowler.com/bliki/ContractTest.html Contract Test

  3. https://martinfowler.com/articles/consumerDrivenContracts.html Consumer-Driven Contracts: A Service Evolution Pattern

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值