Agile Testing
文章平均质量分 88
梅森上校
十多年软件行业从业经验,热爱技术,精于项目管理和研发团队建设。闲暇至于,喜欢欣赏音乐,看看电影;摆弄摆弄茶道,让身心得以调整和休息。
展开
-
赢得面试——关于敏捷测试谈谈你的认识(Agile Testing)
关于敏捷测试谈谈你的认识(Agile Testing)1. 什么是敏捷测试(Agile Testing)?首先,敏捷测试(Agile testing)是测试的一种,原有测试定义中通过对被测试系统(SUT)执行测试从而发现问题。敏捷测试(Agile Testing)是遵循敏捷宣言的一种测试实践:1)强调从客户的角度,即从使用系统的用户角度,来测试系统。2)重点关注持续迭代地测试新开发的功能,而不再强调传统测试过程中严格的测试阶段。3)建议尽早开始测试,一旦系统某个层面可测,比如提供了模原创 2021-02-17 00:06:37 · 1103 阅读 · 3 评论 -
测试策略模板——Test Strategy(中英文)
测试策略模板(中英文)什么是测试策略(Test Strategy)?测试策略是描述测试执行方式的高层文档。在测试策略文档中,记录了测试目标和实现这些目标的一组指导方法。它由测试经理(Test Manager)在测试过程中呈现给所有的利益相关者。它可以包含整个组织或特定项目的范围。测试策略的制定方法测试策略的不同方法是——分析方法——基于风险分析 基于模型的方法——基于各种统计模型 咨询方法——基于与技术或领域专家的咨询 按部就班的方法——基于经验 启发式方法——基于探索性技术原创 2021-02-16 01:07:57 · 3210 阅读 · 2 评论 -
测试计划模板——Test Plan(中英文)
测试计划模板(中英文)什么是测试计划(Test Plan)?测试计划是从需求文档(软件需求规范、用例文档等)派生出来的正式文档,详细描述测试的范围和在测试中执行的不同活动。它通常由测试经理编写,并由应用程序的不同涉众批准。测试计划的特点测试计划需要解决以下问题:测试的总体范围 风险分析 测试估算 资源需求 使用的工具 测试设计活动的安排、评审和分析 创建测试用例和测试数据 测试监控和测试控制活动的识别测试计划模板(例子)一份测试计划通常包含以下关键内容:测试计划原创 2021-02-16 00:57:03 · 4695 阅读 · 0 评论 -
解读 Flaky Test
解读 Flaky TestFlaky Tests是一种不可靠的测试现象:即在同样的软件代码和配置环境下,得不到确定(有时成功、有时失败)的测试结果。从逻辑上讲,当一遍又一遍地进行相同的测试时,代码将产生相同的结果——应用程序要么每次都能正常工作,从而通过测试,要么每次都不能正常工作,从而导致测试失败。测试结果应该是一致的(Consistent),即一段代码要么符合预期的运行结果,通过测试;要么与预期结果不符,测试失败。然而,实际中执行测试时会出现完全相同的代码和配置,但是出现不一致的测试结果,.原创 2021-02-15 16:07:19 · 1837 阅读 · 1 评论 -
DevOps对于测试团队意味着什么?
DevOps对于测试团队意味着什么?在2020年的夏天,我不止一次经历了项目发布前开发团队和测试团队连续加班工作到后半夜的场景。开发和测试团队工作到很晚,他们集中精力,赶在最后期限之前需要完成一些非常重要的工作项:开发团队快速修复缺陷 测试团队进行Retest 开发团队和测试团队进行缺陷Review,然后按照优先级和严重等级对缺陷进行重新排序,确定缺陷修复顺序 对于存在争议的和不能确认的缺陷进行再次Review,争论到耳红脖子粗,最后由PO进行调停 关闭缺陷列表 将即将发布的软件版本原创 2021-02-14 01:06:46 · 336 阅读 · 1 评论 -
质量保证的新方法:TestOps 概念、原则、方法
TestOps初探什么是TestOpsTestOps的目的是促进测试人员和开发人员、运营人员、IT项目管理人员之间密切互动的方法论。在谈论TestOps是什么的时候,我们可以看到在TestOps的文化和模型中,它扩展了测试自动化工程师的角色,新的职责是建立和维护自动化测试环境。这个定义意味着要执行自动化测试,工程师在Docker中打包测试,启动要测试的软件,运行测试,收集结果,并提供报告;通过强制性负载和可靠性测试扩展软件测试类型,扩大测试人员的工作范围,包括在测试环境和生产中监控所有系原创 2021-02-14 00:06:45 · 3300 阅读 · 0 评论 -
谈谈端到端测试(End-to-End Testing)
谈谈端到端测试(End-to-End Testing)当今的软件系统是复杂的,并且与许多子系统相互关联。如果任何子系统出现故障,整个软件系统都可能崩溃。这是一个主要的风险,可以通过端到端测试来避免。端到端测试是一种技术,它从头到尾测试整个软件产品,以确保应用程序流按预期运行。它定义了产品的系统依赖关系,并确保所有集成的部分按预期协同工作。端到端(E2E)测试的主要目的是通过模拟真实的用户场景,验证被测系统及其组件的集成性和数据完整性,从最终用户的体验进行测试。今天的软件越来越复杂。应用程序原创 2021-02-13 14:15:51 · 15800 阅读 · 2 评论 -
API 测试你所需要知道的……
API 测试你所需要知道的……API测试是不同于UI级自动化测试,其主要关注在系统架构的业务逻辑层,所以其主要关注不在于UI操作或用户感观上,更重调用逻辑关系。与UI级自动化测试通过控制键盘输入和鼠标等操作不同的是:API测试,我们是通过工具或代码方式去调用特定的API,获取输出,并记录系统的响应。API测试需要与应用程序的API进行交互,为了测试这些API,我们可以:使用测试工具来进行测试 自己写代码的方式进行测试API级测试至少应该覆盖以下测试要点验证API所暴露的资源是否恰当原创 2021-01-30 11:39:40 · 263 阅读 · 0 评论 -
[敏捷开发实践] 端到端测试你了解多少?
端到端测试你了解多少?端到端测试是一种软件测试方法,用于从开始到结束测试应用程序流。此测试的目的是模拟真实的用户场景,验证被测系统及其组件的集成和数据完整性。它自始至终都是在实际场景下执行的,比如应用程序与硬件、网络、数据库和其他应用程序的通信。执行此测试的主要原因是确定应用程序的各种依赖关系,并确保在各个系统组件之间传递准确的信息。它通常在任何应用程序的功能和系统测试完成后执行。End-to-end testing is a Software testing methodology to原创 2020-05-10 01:14:47 · 2218 阅读 · 0 评论 -
[敏捷开发实践] 为什么开发人员不愿意写单元测试?
为什么开发人员不愿意写单元测试?单元测试是专业开发人员确保真正完成编程任务的有效手段之一。但是实际开发中,绝大多数开发人员却非常抵触写单元测试,这又是很残酷的现实。开发人员有100个理由不写单元测试。我观察了超过20个项目的实际开发过程,与项目经理交谈,与开发者交谈后,也很理解在项目开发过程中他们所面临的“囧境”。也许你会反驳我:“这是不可能吧,连学习软件工程专业的大学生都知道编码完成之后,要写单元测试来验证程序是否按照预期的想法工作……”,“这是什么水平的码农,难道他们不知道TDD吗……难道他们不重视原创 2020-05-09 23:40:43 · 1423 阅读 · 0 评论 -
[敏捷开发实践] 高质量软件交付之概念模型
高质量软件交付之概念模型原创 2019-12-07 23:17:02 · 335 阅读 · 0 评论 -
[敏捷开发培训] 代码质量检查之利器—SonarQube
代码质量检查之利器—SonarQube打开SonarQube的官网,首先看到的就是一行英文Title:Code Quality and Security。SonarQube允许所有开发人员编写更干净、更安全的代码。(SonarQube empowers all developers to write cleaner and safer code.)SonarQube是一个用于管理代码质量的...原创 2019-09-09 23:50:32 · 448 阅读 · 0 评论 -
[敏捷开发培训] SonarQube中的Metric Definition — Tests
SonarQube中的 Metric Definition — Tests度量指标 算法和说明 条件覆盖率 Condition coverage(branch_coverage) On each line of code containing some boolean expressions, the condition coverage simply answers ...原创 2019-09-09 23:22:53 · 974 阅读 · 0 评论 -
[敏捷开发实践] 毁掉项目的六大敏捷开发误区(更新中)
[敏捷开发实践] 敏捷开发的误区误区之一:人人都有机会,为项目招聘新人组建新团队,采用Scrum过程模型开发误区之二:敏捷开发不需要写文档误区之三:敏捷了要拥抱变化,PO(Product Owner)可以随时提出需求变更误区之四:敏捷了一定要引入自动化测试,否则没有“高大上”的感觉误区之五:敏捷开发一定可以加快系统/产品发布误区之六:敏捷开发倡导“个体和交互胜过过程和工具”...原创 2019-08-27 00:50:57 · 453 阅读 · 0 评论 -
[敏捷项目管理和敏捷开发] 开卷有益—推荐阅读书单
[敏捷项目管理和敏捷开发] 开卷有益—推荐阅读书单软件测试系列推荐阅读书单序号 书名 作者 出版社 1 《敏捷实践指南 》项目管理协会 敏捷项目管理书 (美)Project Management Institute 电子工业出版社 2 《敏捷软件测试:测试人员与敏捷团队的实践指南》 (美)Lisa Crispi...原创 2019-08-16 01:05:19 · 237 阅读 · 0 评论 -
[软件测试] 开卷有益—推荐阅读书单
[软件测试] 开卷有益—推荐阅读书单软件测试系列推荐阅读书单序号 书名 作者 出版社 1 《软件测试的艺术》 (美)Glendord J. Myers Tom Badgett Corey Sandler 著 张晓明 黄琳 译 机械工业出版社 2 《敏捷软件测试:测试人员与敏捷团队的实践指南》 (美)Li...原创 2019-08-15 23:42:28 · 370 阅读 · 0 评论 -
Eclipse中安装FindBugs的方法
Eclipse中安装FindBugs的方法在Eclipse中,选择菜单 [Help] 下的 [Install New Software...]在弹出窗口中,Work with中输入:http://findbugs.cs.umd.edu/eclipse/ ,如下图所示:选择 FindBugs,点击下一步 Next 按钮点击 Finish 按钮。FindBugs更多的...原创 2019-06-08 00:35:59 · 731 阅读 · 0 评论 -
成功实施基于Mobile APP测试的5个要点
成功实施基于Mobile APP测试的5个要点1. 分析APP的业务思想要测试一款Mobile APP,不,是要想成功测试一款Mobile APP,一定要理解这款APP的目标和定位,特定的使用场景,使用用户的特征,覆盖的主流移动终端机型等等。2. 功能测试先行这一点很容易理解。 3. 多种测试类型结合UI测试、功能测试、易用性测试、可用性测试、性能测试、安全测试、国际化/本...原创 2019-01-01 00:28:47 · 416 阅读 · 1 评论 -
基于风险的测试方法(RBT)
基于风险的测试方法(RBT)基于风险的测试是根据影响的大小和失败的可能性,对被测应用程序的特性、模块和功能进行优先级排序。它涉及基于复杂性、业务关键性、使用频率、可见区域、缺陷易发区域等来评估风险。风险是对项目的可测量的成功标准有积极或消极影响的不确定事件的发生。可能是过去发生的事件,也可能是现在的事件,或者是将来可能发生的事情。这些不确定事件会对项目的成本、业务、技术和质量目标产生影...原创 2018-12-10 21:06:34 · 4299 阅读 · 0 评论 -
敏捷测试工程师的十条法则
对于初涉敏捷的测试工程师来说,如果定位自己的角色和职责、如何从传统开发模式成功迁移到敏捷模式、如何跟上短迭代的节奏等等问题都迫切地想要找到答案。 资深敏捷实践者Lisa Crispin和Janet Gregory在《敏捷软件测试:测试人员与敏捷团队的实践指南》一书中,列举了敏捷测试工程师的十条法则,对读者或许有借鉴意义。 1、提供持续反馈(Provide Continuous Feedback)转载 2016-01-05 00:41:40 · 458 阅读 · 0 评论 -
敏捷测试的特点
敏捷测试的特点敏捷测试就是符合敏捷宣言思想,遵守敏捷开发原则,在敏捷开发环境下能够很好地和其整体开发流程融合的一系列的测试实践,这些实践具有鲜明的敏捷开发的特征,如TDD、ATDD、结对编程、持续测试等。和传统测试的区分,可以概括如下:1) 传统测试更强调测试的独立性,将“开发人员”和“测试人员”角色分得比较清楚。而敏捷测试可以有专职的测试人员,也可以是全民测试,即在敏捷测试中,可以没有“测试人员”原创 2015-12-20 23:54:36 · 5951 阅读 · 0 评论 -
软件测试:一个Tester的经验分享
项目回顾会议上,新入职场的一名 Tester 经历了2个测试项目后做出的测试经验分享:所有的测试用例设计都应该能够追溯到测试需求;Test Leader、Test Manager、Development团队的Leader等应该能够尽早地和不断地进行各种软件质量保证活动 例如:测试需求评审、测试计划评审、测试环境检查、测试用例设计评审、缺陷列表Review等各种评审活动;自动化测试脚本开...原创 2018-06-17 13:04:06 · 2448 阅读 · 1 评论 -
一个Defect的一生:缺陷声明周期描述
下图描述了一个Defect的一生,即缺陷状态的变迁:其中:1、New、Reopen、Verified 由Test Engineer进行设置 2、Open、Assigned、Closed 由Test Leader进行设置 3、Fixed、Rejected、Deferred由Development团队进行设置状态说明:New:新注册缺陷。Open:Test Leader激活...原创 2018-06-17 13:47:18 · 1119 阅读 · 0 评论 -
合理制定测试计划确保测试的有效性
合理制定测试计划确保测试的有效性案例某基于WEB应用的系统迭代开发,版本即将发布到 V7.6。待发布的V7.6版本,有13项新功能发布,还有22项功能点的变更。开发团队严格遵守4周一个迭代,推出一个新的版本,测试团队有2周的时间可用于测试。测试团队拥有1名Test Leader和8名经验丰富的Test Engineers。新版本发布前需要完成Stage Server上针对新功能和变更项...原创 2018-06-17 19:27:38 · 988 阅读 · 0 评论 -
软件测试:我的“十条”经验主义
软件测试:我的“十条”经验主义最近感觉很疲惫,因为讨论了太多的测试话题。 但是静下来仔细想想,我的“十条”经验主义还是要信守的。 每一条“经验”都有很多的故事可以讲,可以论证这些观点;空闲的时候,可以写成一个一个故事。高质量的软件产品绝不是因为实施了“好的”测试;但是如果没有“好的”测试绝对不存在高质量的软件功能性测试是真正对用户有意义的测试,是必不可少的测试类型“先测试”还是“...原创 2018-07-23 23:44:27 · 248 阅读 · 0 评论 -
自动化测试工具介绍
软件测试自动化工具自动化软件测试对于许多软件项目来说变得越来越重要,以便自动验证关键功能、测试回归以及帮助团队在短时间内运行大量的测试。除了自动化测试之外,许多团队(尤其是较大的项目)仍然需要大量的手动功能测试,原因可能是自动化测试的测试场景也是有限的,不能够完全替代手工测试。下面是一些实施自动化测试的理由:对所有工作流程、所有领域、所有测试场景进行手动测试需要花费大量的资源和成本。...原创 2018-12-08 22:51:03 · 990 阅读 · 0 评论 -
谈谈什么是TDD?
TDD 的简单概念是在编写新代码之前(开发之前)编写和纠正失败的测试。这有助于避免代码重复,因为我们一次只编写少量代码以便通过测试。(测试只不过是我们需要测试以满足它们的需求条件)。测试驱动开发是在实际开发应用程序之前开发和运行自动化测试的过程。TDD的主要目标是使代码更清晰、简单和无bug。测试驱动开发从设计和开发应用程序的每个小功能的测试开始。在TDD方法中,首先,开发测试来指定和验证...原创 2018-12-12 23:07:29 · 18419 阅读 · 3 评论 -
你知道这些测试工具吗?
你知道这些测试工具吗? https://www.getzephyr.com/ https://www.gurock.com/testrail https://sourceforge.net/projects/testlink/ https://www.practitest.com/ https://smartbea...原创 2018-12-09 23:11:58 · 263 阅读 · 0 评论 -
测试面试150题(1-50)
1. What is Exploratory Testing? Exploratory testing is a hands-on approach in which testers are involved in minimum planning and maximum test execution. The planning involves the creation of a test ...原创 2018-12-10 00:00:27 · 2892 阅读 · 0 评论 -
测试面试150题(51-100)
51. Explain how does a test coverage tool works?The code coverage testing tool runs parallel while performing testing on the actual product. The code coverage tool monitors the executed statements o...原创 2018-12-10 00:03:41 · 2579 阅读 · 0 评论 -
测试面试150题(101-150)
101. Testing activity which is performed to expose defects in the interfaces and in the interaction between integrated components is?Integration Level Testing102. What are the Structure-based (whi...原创 2018-12-10 00:05:02 · 1841 阅读 · 0 评论 -
对自动化测试常见的5个误解
对自动化测试常见的5个误解长期以来,自动化软件测试一直被认为是大型软件开发组织的关键,但是通常被认为对于小公司来说太昂贵或难以实现。自动化测试不是银弹,很对管理者和测试者对于应用自动化测试有很多误解。其实在组织中引入自动化测试的成本是很高的,涉及到自动化测试的框架选择、环境构建、人员技能、测试流程和测试管理、测试效果评估和测试度量等等一系列的问题。下面列出对于应用自动化测试常见的5个误...原创 2018-12-15 19:16:41 · 526 阅读 · 0 评论 -
通常选择哪些产品/系统/应用中的特性进行自动化测试?
通常选择哪些产品/系统/应用中的特性进行自动化测试?这实际上是一个自动化测试策略制定的问题。通常,对于SUT(System Under Test)而言,可以为满足下面特征的部分考虑实施自动化测试:为多个构建运行的重复测试。 容易导致人为错误的测试。 需要多个数据集的测试。 经常使用的引入高风险条件的功能。 无法手动执行的测试。 在多个不同的硬件或软件平台和配置上运行的测试。...原创 2018-12-15 19:36:55 · 257 阅读 · 0 评论 -
(解读)什么是渗透测试(Penetration Testing)?
(解读)什么是渗透测试(Penetration Testing)? 渗透测试(Penetration Testing),也称为Pen Testing,是测试计算机系统、网络或Web应用程序以发现攻击者可能利用的安全漏洞的实践。渗透测试可以通过软件应用自动化或手动执行。无论哪种方式,该过程都包括在测试之前收集关于目标的信息,识别可能的入口点,试图闯入(虚拟的或真实的)并报告结果。 让我们...原创 2018-12-16 16:14:03 · 55968 阅读 · 3 评论 -
为什么要引入自动化测试(Benefits of Test Automation)?
你的项目中为什么要引入自动化测试?实施自动化测试有什么好处?降低QA成本 缩短测试时间 提高测试效率 提高产品质量(在产品测试中减少人为错误而导致的不良测试) 优化测试活动 更好地测试覆盖自动化测试的阶段(Life Cycle) Automation scope definition Tool Selection Framework implementatio...原创 2018-12-10 20:15:29 · 1185 阅读 · 0 评论 -
关于安全测试面试的30道基础概念题目
关于安全测试面试的30道基础概念题目 看看这些面试题目,目的是了解安全测试的基本概念。每一道题目都可以展开到一定的深度和广度。这里仅仅是一个抛砖引玉,点到为止。Question 1. 什么是安全测试(Security Testing)?在所有类型的软件测试中,安全测试可以被认为是最重要的。其主要目的是在任何软件(Web或基于网络)的应用程序中找到漏洞,并保护其数据免受可能的攻击...原创 2018-12-16 20:39:08 · 11054 阅读 · 1 评论 -
测试人员如何参与需求定义过程?
How should QA testers participate in the requirements definition process? 质量测试人员如何参与需求定义过程?说明:在本文中为了尊重作者的原文,所以将 QA testers 翻译为测试人员。尽管这个翻译看起来比较别扭。 有一些组织/公司会将测试者归结到SQA部门,但是在大多数组织中会严格区分SQA、SQC和Tester的角色翻译 2016-01-02 19:01:22 · 643 阅读 · 0 评论