禅道博客

分享专业技术知识,文章内容干货满满!

自动化测试

测试工程师必知的10大测试法则

作为开发人员,我们应该遵守这样一句话:“质量不是来自检查,而是来自生产过程的改进。”——爱德华·戴明  “测试即代码。” 太多的组织将任何未编码的东西视为一次性的。很明显,测试是必不可少的,但我们一次又一次地发现,团队将测试自动化和相关材料视为二等公民。测试是用户行为的文档,与产品组织产生的需求密不可分,并在虚拟层面与用于创建功能的代码相连。 如果它提供了价值,就应该对它进行版本化、维护、照顾和尊重,就好像它是产品本身的核心功能一样。这应该包括测试用例规范、设计和技术文档以及错误报告。  “时间扼杀信心。” 大多数人可能会认为,在一个功能上花的时间越多,就需要...
🍪
陈哥
2023-09-12

TDD、BDD、ATDD都是什么、有什么区别?(下)

在《TDD、BDD、ATDD都是什么、有什么区别?(上)》中,我们探讨测试驱动开发(TDD)、行为驱动开发(BDD)和验收测试驱动开发(ATDD)的概念。虽然它们都是软件开发中使用的测试方法,但它们在方法和重点上有所不同。 TDD、BDD和ATDD之间的主要区别在于关注点、抽象层级和协作: 关注点 TDD侧重于测试代码并确保它满足需求。BDD关注软件的行为,并确保它满足业务需求。ATDD关注于验收标准,并确保软件满足业务需求。 抽象层级 TDD专注于代码级别,并使用单元测试来验证代码的功能。BDD专注于功能...
🍪
陈哥
2023-09-04

TDD、BDD、ATDD都是什么、有什么区别?(上)

软件开发是一个迭代过程,包括编写、测试和改进代码,直到满足需求。测试驱动开发(TDD)、行为驱动开发(BDD)和验收测试驱动开发(ATDD)是支持该过程的三种方法。TDD、BDD和ATDD都是软件开发中用于测试和确保质量的方法。虽然它们都以提高软件开发质量为目标,但它们的方法和关注点有所不同。本文将探讨TDD、BDD和ATDD的概念以及它们之间的区别。 测试驱动开发(TDD) 测试驱动开发(TDD)是一种软件开发方法,侧重于在编写代码之前编写测试。这是一个迭代过程,包括编写测试,运行测试,然后编写通过测试的代码。TDD的目标是编写高质量、可维护的代码,这些代码可以做到既满足需求,又没有B...
🍪
陈哥
2023-08-28

DevSecOps 中的漏洞管理(下)

建立漏洞管理程序以支持DevSecOps 在讨论DevSecOps及DevOps模型中包含安全性的重要性时,建立有效的漏洞管理实践是非常重要的。这可以通过将漏洞管理设置为程序来实现。 我们可以开始对IT组织进行漏洞管理评估。人们经常问的问题可能是,既然已经建立了一些补救机制,为什么还需要进行评估。但拥有这些类型的评估以跟上安全和漏洞修复的行业标准是极其重要的。以下就是需要进行漏洞管理评估并跟上行业安全标准的原因之一。在典型的IT组织中,我们用于软件开发的项目中,只有20%-25%的自定义代码。我们将使用所有工具进行不同类型的代码扫描,并确保修复漏洞。然而,其余的代码将来自开源模块和库。我们...
🍪
陈哥
2023-08-16

DevSecOps 中的漏洞管理(上)

DevSecOps意味着在DevOps交付管道把安全性包含进去。该模型尽可能早地将安全原则集成到软件开发生命周期的所有适用阶段中。下图展示了安全方面在DevOps后期阶段的集成,但DevSecOps安全性集成到生命周期的所有阶段。 IT安全领导者应该在他们的组织中采用有效的漏洞管理实践来实施适当的DevSecOps。 漏洞管理 漏洞管理是一种帮助组织识别、评估、确定优先级并修复系统中漏洞的做法。最终,漏洞管理的目标是通过使用修补、加固和配置管理等技术来降低漏洞带来的风险。这有助于确保安全性,同时限制恶意用户可能利用的风险。IT安全的主要职责是防范漏洞。我们都知道,安全漏洞可能代...
🍪
陈哥
2023-08-07

提升系统管理:监控和可观察性在DevOps中的作用

在不断发展的DevOps世界中,深入了解系统行为、诊断问题和提高整体性能的能力是首要任务之一。监控和可观察性是促进这一过程的两个关键概念,为系统的健康和性能提供了宝贵的可见性。虽然这些术语经常可以互换使用,但它们代表着理解和管理复杂系统的不同方法。在本文中,将探讨监视和可观察性之间的差异,提供示例来说明它们的应用,并强调各自的又是。同时,本文还将深入研究用于有效监测和可观测性的技术和工具。 监控:了解系统状态 监控的重点是收集和分析有关系统或应用程序状态的数据。它通常包括设置特定的指标、阈值和警报机制,以跟踪各种组件的性能和可用性。常见的监测技术和工具包括: 指标监控:使用Nag...
🍪
禅道陈哥
2023-07-26

2023年DevOps趋势预测

随着企业转向数字化转型,DevOps 变得比以往任何时候都更加重要。弥合其开发与运维部门之间的鸿沟已成为当今IT公司的迫切需求。DevOps可以帮助加快和改进软件交付、提高客户满意度、缩短产品上市时间等等。正因为如此,DevOps 实践对大多数企业来说变得极为重要,并且随着时间的推移越来越为人所知。根据 Markets and Markets 的一份报告,DevOps 市场的规模预计将从 2017 年的 29 亿美元增长到 2023 年的 103.1 亿美元。 DevOps 已经发展到可以满足不断变化的商业世界和创新技术的快节奏发展的需求。让我们看一下在2022年末对DevOps未来的一些预测...
🍪
李晓琳
2022-12-15

DevOps那些事儿——DevOps相关概念一览

CI / CD是任何DevOps操作的两大基石,这是一种开发软件的方式,随时以可持续的方式发布更新,以生产快速而强大的软件。这篇文章带你理清持续集成、持续交付和DevOps的相关信息! 持续集成 Continuous Integration,缩写为CI。Martin Fowler这样定义持续集成:持续集成是一种软件开发实践,即团队开发成员经常集成他们的工作,通常每个成员每天至少集成一次,也就意味着每天可能会发生多次集成。每次集成都通过自动化的构建(包括编译,发布,自动化测试)来验证,从而尽快地发现集成错误。 也就是说开发人员一天一次或多次提交代码到主干,测试不通过不能集成到主干分支。许...
🍪
李晓琳
2022-11-24

从DevOps发展历史来理解DevOps

DevOps是一个合成词,源于“Development(开发)”和“Operations(运维)”两个词,它涉及以特定的方式实践应用程序开发的任务,是软件开发、测试和运维结合的过程、方法及系统,可以简单理解为“开发运维一体化”。搜索DevOps时,总会出现敏捷、Scrum等容易混淆的概念,本文从DevOps发展历史来看,理清这些相关概念。 1948 - 丰田生产方式 丰田副社长大野耐一为挽救丰田濒临崩溃的生产过程,决定创建一个“ 消除浪费、持续改善”的精益生产方式。 在福特生产模式的基础上,大野耐一提出了“准时生产(JIT)”, 决定控制库存,力求达到“零库存”。准时制的基本思想是“只...
🍪
李晓琳
2022-11-18

测试自动化中遵循的最佳实践

现在的企业从以往一年、一个月、一周交付,逐渐转变为开始关注两到三天甚至一天内交付。软件自动化测试的出现及其与手动测试的结合使得这种时长的交付成为可能。及时的软件测试会发现问题,在功能到达用户之前对其进行纠正。软件测试是最活跃的讨论之一,而软件旨在为其用户提供便利,并且是软件开发的一个组成部分。但是需要遵循某些实践以最大限度地使用自动化测试。本文将讨论测试自动化中要遵循的一些实践。 了解自动化测试的障碍 想要建立测试团队,第一步就要了解是什么组织了这个团队转向自动化测试。很多情况下,需要学习一门新的编程语言是一大阻碍。一个团队可以学习一门新的编程语言并实施一个成功的测试自动化项目吗?这些都...
🍪
李晓琳
2022-11-14
返回顶部
刘斌
高级客户经理
17685869372
526288068
统一服务热线 4006-8899-23
我要提问提问有任何问题,您都可以在这里提问。 问题反馈反馈点击这里,让我们聆听您的建议与反馈。