引言如果你还不了解什么是软断言(SoftAssert),请阅读《软断言——为何你应在单元测试和集成测试中使用它们?》。本文是《优雅断言:使用AssertJ创建自定义断言以实现更整洁的代码》的续篇,该文章向你展示了如何使用AssertJ创建自定义断言。在这里,你将学习如何在其方法的基础上进行扩展,从而在自定义断言之上使用软断言方法。使用AssertJ创建自定义软断言你可以使用AssertJ库中的
2024-12-13/84 人阅读/0 人点赞
“嗯,在我的机器上可以运行”我相信在我们的职业生涯中,我们都曾听过开发人员对我们这样说过,我们也都会对此翻白眼。显然,这并不只是你机器上的问题……我们最好将同样的“它不应该只在我的机器上运行”理念应用到我们的测试中:团队中的每个人都应该能够运行它们。测试自动化的核心在于快速反馈,只有当运行测试快速、顺畅且无缝时,你才能获得这种反馈。此外,测试应该能够按需运行,无需等待有人设置机器、准备必要的测
2024-12-13/83 人阅读/0 人点赞
有一个关于用人工智能取代开发人员和测试人员的有趣笑话:“要用机器人取代程序员,客户必须准确描述他们想要什么。所以我们很安全。”尽管人工智能被认为能够通过机器学习持续学习和扩展其智能与意识,但它仍远未达到完美的程度。无论如何,人工智能在软件测试中将成为不可或缺的一部分。但具体是如何、何时以及为何呢?让我们来看看使用人工智能如何帮助质量保证(QA)工程师更智能、更高效地进行工作。为什么软件测试人员
2024-12-13/113 人阅读/0 人点赞
人工智能(AI)的出现及其对人类的影响最近成为热门话题。尽管关于AI仍有许多未解之谜,但其发展的速度以及它如何渗透到社会的各个方面,绝对不容忽视。上个月,我参加了两个截然不同的科技会议,分别是TestBash2024和ScotSoft2024,这两个会议中(无论好坏)很大一部分演讲都围绕着AI展开。因此,我一直在思考一个问题:AI驱动系统的兴起未来将对软件测试和高质量产品交付意味着什么?我之前在另
2024-12-13/108 人阅读/0 人点赞
在我的第一篇文章《测试用例设计心态一览》中,我讨论了如何在创建测试用例时确保质量,使用了下订单API和排球类比。虽然那篇文章的重点是发现漏洞,但在当今快节奏的软件开发环境中,预防漏洞变得更加至关重要。选择合适的测试策略是确保产品质量、加快发布速度并避免生产环境中昂贵漏洞的关键。一种广为人知的平衡测试方法是测试金字塔(TestPyramid),由MikeCohn在他2009年的书《成功使用敏捷:
2024-12-13/82 人阅读/0 人点赞
引言我在担心当前的一种趋势。我也感到沮丧。每个测试人员曾经在职业生涯的某个时刻都说过:“你无法测试一切。”如果你留心的话,你只需要在职业生涯中完成一项测试任务就能意识到这一点。在我看来,有些高级管理人员并没有说过这个和/或没有听他们雇佣的专家的话。问题我可以向你保证,任何认为自己是专业的测试人员都不会完全遵循测试脚本。也许他们只是在遵循一个一般想法的标题,事实就是这样。现在,如果你确定你的团队没有
2024-12-13/83 人阅读/0 人点赞
这周晚了——我以为我已经发布了……长期读者(感谢大家!)知道,我通常在这里写一些关于领导力的主题,偶尔也会涉及软件开发和徒步旅行的故事。你们也知道,我有时会写关于为什么我认为大多数软件团队不需要专职测试人员的内容。但是——我意识到,我从来没有真正写过关于如何进行这种过渡的内容。我们都听说过那些取消测试人员职位的公司,他们没有任何计划来确保过渡的顺利进行,最终完全失败了。这并不一定意味着他们的团队确
2024-12-13/76 人阅读/0 人点赞
行为驱动开发(BDD)是一种备受推崇的方法,它通过将应用需求编写为描述各种情境下行为的场景,来明确需求。BDD源自敏捷开发运动,并在其强调测试驱动开发(TDD)的基础上更进一步,超越了简单的用户故事,记录了用户在使用系统时的行为。在BDD中,通常使用Gherkin语法来编写用户场景,具体方式如下:Given(给定):描述场景开始时的初始上下文,包含一个或多个子句;When(当):触发场景的事件
2024-12-13/81 人阅读/0 人点赞
在使用Playwright进行自动化测试时,有时需要设置等待时间,因为如果它不等待某些事件(例如某个事件的发生),测试就会失败。比如,你可能需要等待页面加载完成才能进行下一步操作。可以通过设置“等待”一段时间来让测试暂停,比如说5秒钟。如果这样做,无论是否必要,测试都会等待这段时间,从而导致测试过程比实际需要更慢。在编写Playwright测试时,最好让测试等待一些具体的内容,比如等待定位器渲
2024-12-13/69 人阅读/0 人点赞
人工智能(AI)已经改变了自动化RestAPI测试的设计和执行方式。通过应用机器学习(ML)和自然语言处理技术,AI可以分析庞大的数据集和API规范,自动生成全面且相关的测试用例。这加快了测试过程,并通过识别未被探索的质量领域来提高测试的有效性。在本文中,您将学习如何使用StackSpotAI的情境化代码助手来创建自动化RestAPI测试,从而简化自动化项目的开发和编码。了解StackSpot
2024-12-13/88 人阅读/0 人点赞
大家好,我是陈哥,今天想和大家聊聊Git合并冲突解决~背景前几天,我正好收到了一位读者的留言:又又又又遇到了Git合并冲突,解决冲突比写代码还费劲,突然想起SVN的好。该怎么避免Git冲突啊?我想,比如这样?在我看来,Git合并冲突是不可避免的。在本文,我想和大家简单分享一下遇到Git冲突该如何解决,希望对大家有所帮助。在此之前,我们先来了解一下Git的合并冲突是什么以及合并冲突的类型有哪
108°
/1084 人阅读/268 人点赞/0 条评论
大家好,我是陈哥,今天聊聊禅道的代码提交规范~背景在《还不知道这个原则的程序员,要小心了》的文章中,我提到了禅道的代码提交规范。简单来说,我们将工具融入到禅道团队的日常代码提交过程中,利用工具对流程、行为进行规范和约束。接下来,我将从编码规范、测试规范等方面,和大家简单分享一下禅道团队的代码提交规范。为了方便大家了解和学习,大家可以发送【代码提交规范】,免费领取禅道团队的代码提交规范。
110°
/1105 人阅读/268 人点赞/0 条评论
一位读者在看过我的《理解这八大优势,才算精通单元测试》后,问我:知道单元测试有好处,但实在没空写。看完文章后又想重新落实一下,有没有啥写好单元测试的技巧?这位读者绝对不是第一个和我抱怨单元测试的人。这很好理解,中国互联网公司太多太卷,想要抢夺市场就要推出不同功能,而这些压力一部分落在了程序员身上,拼命赶需求。单元测试这种费力不讨好的事情,自然而然就没有人做。就我多年的经验来看,写单元测试其实不
149°
/1499 人阅读/268 人点赞/0 条评论
在准备将软件上线到生产环境之前需要进行测试。随着软件测试方式日趋成熟,软件开发团队的测试也在取代大量手动测试,逐渐实现自动化测试。通过自动化测试,开发团队可以在短短几分钟内就了解到软件是否存在问题,而不需要等待几天的时间。自动化测试大大地缩短了反馈周期,与敏捷开发、持续集成和DevOps文化密切相关。本文将分为上、下篇来探讨如何构建一个高响应、可靠并且可维护的测试组合,无论是针对微服务架构、移动
275°
/2756 人阅读/267 人点赞/0 条评论
作为开发人员,我们应该遵守这样一句话:“质量不是来自检查,而是来自生产过程的改进。”——爱德华·戴明 “测试即代码。”太多的组织将任何未编码的东西视为一次性的。很明显,测试是必不可少的,但我们一次又一次地发现,团队将测试自动化和相关材料视为二等公民。测试是用户行为的文档,与产品组织产生的需求密不可分,并在虚拟层面与用于创建功能的代码相连。 如果它提供了价值,就应该对它进行版本化、维护、照顾和尊重,
311°
/3114 人阅读/162 人点赞/0 条评论
技术性债务在DevOps到底意味着什么?从本质上讲,这是小的开发缺陷的积累,需要不断地返工。它可能由多种原因引起,例如快速交付新功能的压力,这可能会导致团队不得不牺牲代码的整洁和完善。但这些不完整的小代码,如经济上的债务一样,随着时间的推移会产生“利息”,在软件工程里就表现为修改的挑战或添加新功能的困难。 一、技术债务的原因技术债务的主要原因之一是组织的开发方和业务方之间的脱节。开发团队经常会感到
262°
/2627 人阅读/245 人点赞/0 条评论
在《TDD、BDD、ATDD都是什么、有什么区别?(上)》一文中,探讨了探讨TDD、BDD和ATDD的概念。虽然TDD、BDD和ATDD都是软件开发中使用的测试方法,但它们在方法和重点上有所不同。TDD、BDD和ATDD之间的主要区别在于关注点、抽象层级和协作。1、关注点TDD侧重于测试代码并确保它满足需求。BDD关注软件的行为,并确保它满足业务需求。ATDD关注于验收标准,并确保软件满足业务
287°
/2878 人阅读/159 人点赞/0 条评论
tynam —-倔强的测试人 几年前,当我第一次看到《海盗派测试分析:MFQ&PPDCS》这本书的时候,便带给我一种非常亲切的感觉,书中的部分思想和我当时的认知非常切合。那几年,我一直从事软件测试工作,按照自己的想法完成着测试任务,与接受的测试理论存在非常大的差异,一度怀疑自己是否走偏,但感觉又应该是自己走的那样,直至了解到海盗派Tester,心中顿有方向,有理论支持。至今,还在一如既往的
278°
/2781 人阅读/271 人点赞/0 条评论
作者:王凌云|QE_LAB 背景:最早接触和了解无障碍测试是在去年参加公司的一项“无障碍测试公益培训” 的助教工作,这个活动是计划为“有人”基金会的视障人群展开一期“无障碍测试公益培训”活动。后来通过公司的Accessibility Community上的文章对无障碍测试有了更进一步的了解。目前所在的项目中正在做有关Mobile端的Accessibility的测试和相关的开发改进工作,借此做一个总
318°
/3188 人阅读/269 人点赞/0 条评论
作者:赵泽鑫|QE-LAB浅谈DataDrivenTestingWhatisDataDrivenTesting数据驱动测试(Data-driventest)是一种软件测试方法,其中测试数据以表格或电子表格格式存储。数据驱动测试允许测试人员输入一个单一的测试脚本,可以对表格中的所有测试数据执行测试,并期望在同一表格中的测试输出。它也被称为表驱动测试或参数化测试。尤其是针对于自动化
352°
/3526 人阅读/407 人点赞/0 条评论