功能测试评论的每一个方面的软件,确保它是有效的(即函数)正确。188金宝搏官网登录app很简单,功能测试看着软件应该做什么,确保它确实。188金宝搏官网登录app所以当功能测试查看应用程序的执行能力,非功能性测试观察其整体性能(如。通过测试的可伸缩性、可靠性、安全性和兼容性)。
进行功能测试时,您通常需要遵循这一过程是这样的:
- 使用测试数据来识别输入
- 确定预期结果应该基于这些输入
- 运行测试用例与适当的输入
- 预期结果与实际结果进行比较
这个方法后,如果预期结果和实际结果匹配,你可以得出这样的结论:软件功能正确,测试已通过。188金宝搏官网登录app如果他们不匹配(假设你正确理解结果应该和使用正确的输入),然后用该软件有一个问题。188金宝搏官网登录app
常见的功能测试包括:
- 单元测试:测试单个单元的软件以确保它适当地执行。188金宝搏官网登录app
- 集成测试:需要多个独立单元的软件和测试他们作为一个群体,以确保适当的互动。188金宝搏官网登录app
- 烟雾测试:测试软件的主要部分不全面的方式,以确保足够先进的软件(或不是188金宝搏官网登录app充斥着太多的问题)继续进行额外的测试。
- 回归测试:测试代码更改没有负面影响的功能软件。188金宝搏官网登录app
- 完整性测试:测试软件的主要部分不全面地进行代码更改,确保更改之后没有产生188金宝搏官网登录app任何严重问题。就像冒烟测试宽,浅视图和单元测试的更深入的观点,完整性测试宽,浅视图后新构建和回归测试的更深入的观点。
- 用户验收测试:通常软件上线前最后一步,用户验收测试确保软件符合用户需188金宝搏官网登录app求。最终用户一般在测试期间执行这些测试。
除了确认正确应用程序功能的主要领域,这些测试也旨在审查软件的可用性和可访问性以及当发生错误。188金宝搏官网登录app
用例,技巧和最佳实践最受欢迎的功能测试类型
不管什么类型的功能测试你跑步,有几种不同的方法可以用来执行这些测试和组织你的工作。来帮助你开始,我们列出了五个最受欢迎的功能测试方法,包括它们是什么,何时使用他们,做他们的技巧和最佳实践。
手动脚本测试
- 手动脚本测试是什么?
- 当你会使用手动脚本测试么?
似乎是一个理想选择放弃手工测试的自动化,但并不是所有的测试可以自动化。我们仍然需要在各种情况下手动测试。时一些常见的例子有意义的手工测试的方法包括当你处理遗留系统不容易支持自动化,当您需要遵守严格的规定和要求的文档作为结果,当你需要运行复杂的测试。这最后一点复杂性是开放式的,但这个想法是在处理复杂的测试用例时,有一个人在方向盘可以更容易和更容易发现问题。一般来说,手工测试是更好的在这种情况下,你需要密切模仿真实世界的场景。
手动脚本测试最佳实践、提示和技巧
- 编写可重用的测试用例(然后重用它们!):开发测试用例需要时间,所以更多的可重用你可以测试用例,更好的(只要你记住重用他们在适当的时候)。编写可重用的测试用例,确保你用简单的语言,很容易理解,测试步骤短,容易执行。然后,在适当的时候帮助重用测试用例而不是每次重新发明轮子,一定要保持组织的管理你的测试用例就像一个单一来源的真理测试用例管理工具。
- 设计测试由测试数据和配置:依赖于测试数据和配置开发测试步骤将确保你有一切你需要完成测试并完全理解结果。例如,你需要确保你有正确的登录凭证,以便您可以访问所有的功能你应该测试,确保你有正确的输入数据,因为这将影响测试通过或失败。最终,你需要密切关注测试数据和配置的每一步,因为这些细节也很重要当通知开发人员和产品负责人关于问题和帮助他们理解这些问题的根源。
- 优先级高的风险和复杂的测试用例:你不能有100%的测试覆盖率结合耗时的手工测试的性质使得它必须优先考虑你的测试用例。手工测试时,需要优先考虑高风险和复杂的测试用例,这些是那些最需要一个人在方向盘上。
- 考虑到自动化的机会(不出船外):虽然你不应该你所有的自动化测试,你应该寻找机会去拥抱自动化为了节省时间和更容易经常运行某些测试(特别是测试变得更加集成在整个软件开发过程)。188金宝搏官网登录app记得带上一个自动化的第一种方法考虑测试时最好手动执行,哪些是适合使用自动化测试。您还应该记住的复杂性。在高度复杂的测试用例应该保持手册,简单的烟雾测试自动化可以添加重要的价值。
- 不要忽略文档的重要性:文档是手动测试的关键,特别是通过报告跟踪问题。帮助他人的好报告至关重要的团队(测试人员和开发人员)理解存在哪些问题以及如何找到他们。写一个强大的报告,你需要一个简单的标题,明确问题,有序列表的步骤重新创建的问题很容易理解和遵循,细节问题的严重性和优先级,和洞察力应该发生什么,如果问题得到解决。
探索性测试
探索性测试是什么?
探索性测试是一种定时的方法中,测试人员制定了一定的时间去“探索”软件。188金宝搏官网登录app虽然这也是一种手工测试,探索性测试偏离了一个严格的工作流程的规划、设计和执行测试用例的步骤。在这次会议期间,测试的目的是了解软件是如何运作和识别不同的测试运行基于理解。188金宝搏官网登录app因为探索性测试不是照本宣科,通常反映在现实生活中用户将如何与软件交互。188金宝搏官网登录app
这种测试方法是互补的上下文驱动的测试,认为没有“一个最好的方式”进行测试。相反,它认为,测试需要处理不同的基于上下文的每个项目将使用的软件。188金宝搏官网登录app探索性测试补充上下文驱动的测试因为考虑到每个软件的唯一性,而不是支持标准的、放之四海而皆准的测试方法。188金宝搏官网登录app
你什么时候应该使用探索性测试?
最好的实例,使用探索性测试包括那些当你下一个时间限制,因为他们需要最少的准备和允许快速反馈,那些没有任何规范的开发人员时,那些在你需要帮助的时候决定什么类型的测试运行,而当你想要进行一次良心全方位测试,以确保你没有错过什么时候执行以前的测试。
探索性测试最佳实践、提示和技巧
- 总是包括探索性测试:不管你计划使用其他测试方法对于一个给定的项目,你应该总是包括探索性测试。这种包容的探索性测试可以帮助你确定哪些其他测试可能需要运行或使用哪个方法最意义,可以作为很好的检查你的测试结果已经执行的状态。最重要的是,你可以在任何阶段插入探索性测试项目的(甚至多个阶段)。
- 开发一个明确的章程:你需要制定一个明确的宪章每个会话你进行探索性测试。这个宪章应该包括一个使命陈述,你测试的列表区域,所有参与测试人员的名字,会议的日期和时间,任务的列表(包括时间、数量的测试设计和执行和缺陷调查和报道的数量),记录测试活动和细节在任何你发现的错误和问题。一个探索性测试和文档工具像Tricentis qt188金宝搏app苹果下载软件可以使这个过程更简单和更有效率。
- 监控你的时间:因为探索性测试定时,监视你的时间是很重要的。特别地,您应该跟踪你的时间创建测试和执行测试,发现错误和报告bug和建立会话。但也许最重要的是实际的时间花在一个探索性测试会话和你计划的时间花在一个探索性测试会话。总的来说,这些比较可以帮助您确定多少测试一个软件可能需要以及哪些地区最需要测试的软件。188金宝搏官网登录app
- 探索性测试优先于低价值脚本测试:如果你运行脚本测试,提供几乎没有价值,这是一个明确的信号切换到一个探索性模型。探索性测试可以帮助你正确的课程同样的时间导致更多的价值通过帮助您确定一个新的测试策略,将发现的问题和导致更高质量的最终产品。探索性测试和低价值时脚本测试,每次都是前者获胜,因为它可以呼吸新想法更紧密地模仿现实世界的用户体验和删除预定所带来的局限性,脚本测试。
- 使文档你最好的朋友:探索性测试应该是不同的每一次你这么做,但这并不意味着你不能从过去工作,什么没有。虽然你采取实际行动在不同会话会有所不同,你的高水平的方法肯定可以类似的一次又一次。要理解什么可行,什么不,您需要让文档你最好的朋友。你可以在宪章通过详细说明你所做的,你怎么做到的,你发现为了确定你的努力的整体有效性。作为奖励,你有更多细节,清晰的路线图概述时你会有下一步基于探索性会话。
UI /自动化测试
UI /自动化测试是什么?
UI /自动化测试的行为进行具体测试通过自动化手动(而不是进行)。虽然是真的,当你运行一个测试通过它将运行在自己的自动化,自动化测试不仅是“设置它,忘记它。“自动化,需要开发和维护测试脚本的源代码,包括更新代码更新应用程序。此外,你不能仅仅依赖于自动化测试工具,因为你需要的技能的人来操作这些工具和维护源代码。大家都说,自动化可以帮助你更快地运行测试和自动基于某些条件得到满足。
自动化可以帮助你更快地运行测试和自动基于某些条件得到满足。
你什么时候应该使用UI /自动化测试?
人们很容易尝试使用你所有的测试自动化的需求,但这样做将是一个错误。例如,太多的自动化测试会导致维护挑战当试图跟上改变源代码的需要。这也意味着你失去了人类方面的测试,这是至关重要的在真实的场景中捕捉缺陷。正如迈克尔·波顿所说,自动化是更多关于检查或确认的东西是真的比测试或识别未预料到的问题。
有鉴于此,场景最适合UI /自动化测试包括高风险的场景,需要一个简单的烟雾测试(如确认用户登录浏览),简单的测试,你需要经常运行(自动化可以提高效率)和测试,由于人为错误经常失败。如果你不确定如何自动化,运行一个探索性测试会话可以帮助你做出更明智的决策。虽然不能达到100%的自动化测试,自动化的实例的数量是有意义的使用可能会增加你搬到一个连续的测试模型,因为这种模型需要更多的测试来完成整个开发周期。
UI /自动化测试最佳实践、提示和技巧
- 早期经常测试,尤其是在高风险的情况下:自动化测试最大的好处之一是能够快速重复地执行测试没有手动工作。重要的是要利用这个好处通过运行自动化测试早期(尽快发现问题),通常(尽快发现问题他们出现)。这种“早期经常测试”的心态在高风险的情况下尤为重要,更早、更多的定期测试,更好的位置你会赶上和减轻风险潜在的破坏性的问题。
- 优先考虑维护和追求可持续的源代码:自动化测试只是一样好它的源代码,和源代码往往需要定期维护。具体地说,您通常需要更新源代码开发人员对应用程序进行更改,因为每次的源代码需要反映这些变化或测试执行时将产生不准确的结果。因此,您需要优先考虑维护。说,你应该让你的源代码尽可能可持续,所以你需要做出的改变与应用程序更新将是很小的。即使有一个可持续发展的方法,记住,你仍然需要重新审视每次更新软件的源代码。188金宝搏官网登录app
- 考虑为您的需求的最佳工具(但要记住你的人!):当选择一个自动化测试工具,考虑您的需求开发语言,操作系统和平台以及每个工具的功能创建功能丰富的测试。工具选择时是绝对重要的自动化测试,但也不是唯一重要的拼图的——也将开发自动化测试的人。因此,你还需要考虑易于测试和管理源代码在工具和你的团队的相关技能。您可以了解更多关于软件测试工具,包括最受欢迎的自动188金宝搏官网登录app化工具,在这里。
- 定期评估结果,以避免运行低价值测试:只是因为你可以快速而方便地运行测试如果是自动的,并不意味着你应该这么做。因为自动化测试的形式仍然需要努力维护源代码。因此,您需要您的自动化测试的结果进行分析,以确定如果你运行测试不提供任何价值,比如那些经常错过以后问题表面或那些通过100%的时间(这可能意味着你不需要测试期间,除非它是一个高风险的情况)。如果你确定低价值测试,你需要决定如果你应该改变测试,改变的方法(如通过手动方法相反),或完全消除测试。
- 认识到自动化测试的局限性:所有自动化带来的好处,并不是全部进行测试。事实上,即使你可以自动化所有的测试,你不想这样做,因为自动化有其局限性。很简单,在一些实例中,您需要一个人类的视角。例如,使用UI测试自动化可以确定如果一个元素呈现,但只有人类才能确定它出现在正确的地方和看起来不错。一般来说,自动化测试不反映用户的经验,所以你需要记住你的测试用例的目标在决定是否采取一个自动化的方法。
行为驱动开发(BDD)测试
什么是BDD测试?
行为驱动开发是一个测试优先的方法,测试驱动开发(TDD)的一个子集。BDD鼓励所有利益相关者之间的合作——测试人员,开发人员,产品所有者,等等——删除这些不同群体之间的筒仓经常创建一个“破碎的电话”场景,在该场景中,开发人员必须将要求从产品所有者,测试人员必须翻译要求从开发人员等等。通过将每个人都在一起,BDD”创建一个共同的理解和表面的不确定性,根据其创始人丹北。换句话说,它可以让每个人都在同一页中,让每一方更容易问一些商业案例的根源,最终帮助大家共同努力,创造一个更好的最终产品满足用户的需要。BDD的最终结果是需求中定义简明英语和场景,通常遵循Given-When-Then格式,测试人员和开发人员可以使用在确定测试需求。一般来说,BDD是一个更加方法,提供高水平的效率和有效性时用户体验测试。
你什么时候应该使用BDD测试?
你应该采用BDD方法编写测试和规范。BDD是最有帮助的单元测试时,通常需要改变乏味每次软件更新。188金宝搏官网登录appBDD可以简化这个过程,因为它需要测试基于行为,不是基于代码。
BDD测试最佳实践、提示和技巧
- 让你的场景声明(不是必须):写作场景声明格式而不是命令式的格式会导致更好的模拟用户的角度简单场景。例如,声明式场景做一个网上购物可以写成:
我在我的购物车
当我把我的订单
然后我应该看到一个订单确认
命令式的版本的场景会写成:
我在我的购物车
当我点击“我的订单”按钮
我填写我的账单信息
我填写我的航运信息
我点击“提交订单”按钮
然后我应该看到一个订单确认
正如这些例子所演示的,声明版本是更简单、更容易理解和维护,对用户的角度来看,没有一个程序员。
- 理解小黄瓜的语法:的小黄瓜语法Given-When-Then场景中使用的(如上图)BDD测试是至关重要的。这个语法应该描述上下文(给),行动(时),结果(然后)。这个语法是很重要的,每一项物品的顺序出现。放弃一个项目或者将他们的订单可以改变整个语法意义和负面影响未来的测试和开发工作。
- 写作时要注意步骤定义:使用BDD,您需要编写步骤定义,将你的小黄瓜场景转化为操作系统将在测试期间。当你开发步骤,你应该写独特的定义,以避免问题的系统并不知道哪一步是这场比赛对于一个给定的场景。您还应该确保只包括一个行动,每一步每一步有一个动作使它更有可能的是,您可以重用步骤在场景。
- 回收你的步骤:如果你用心在写步骤定义和编写可重用性,那么你也应该尽可能多回收你的步骤。回收步骤不仅可以节省时间和精力与创造新的步骤,但它同样也简化了维护,任何时候你需要更改一次步骤你可以改变它,改变应用跨多个场景。
- 不要忽视和兴趣协作的重要性:许多测试人员和开发人员忽略了合作的重要性或失败来衡量对方的合作兴趣。当这种情况发生时,最终的结果受到损害。无论你是一名开发人员,测试人员,或在其他任何角色,你们都在同一个团队和有相同的最终目标:交付高质量的软件,终端用户解决问题。188金宝搏官网登录app和协作是实现这一目标的关键,在任何情况下,特别是当BDD测试方法。
基于风险的测试
基于风险的测试是什么?
基于风险的测试是一个组织的方法,重视高危地区的测试软件。188金宝搏官网登录app它声称,高危地区需要经常测试,有一个高水平的测试覆盖率,以减轻风险。
你什么时候应该使用基于风险的测试?
基于风险的测试面临时最好使用时间,预算和/或资源限制。你可以确定哪些领域的软件在许多方面是高风险的。188金宝搏官网登录app例如,风险可能是由于高的影响(如。如果一个问题会影响到90%的用户),敏感信息的存在(如。如果用户需要共享的信用卡信息或个人身份信息),或一个高水平的复杂性。
基于风险的测试最佳实践、提示和技巧
- 评估风险在项目级别:为了正确理解所有的潜在风险的一个软件,你需要评估风险在项目级别来更全面的了解。188金宝搏官网登录app这个项目级别的评估应该包括从测试人员和开发人员业务涉众和应该大纲有什么潜在的风险,这些风险的影响,计划测试和减轻风险,可能的原因为每个风险,和一个应急计划。承担这个风险评估应该帮助你正确范围测试需求,并提供每一个人都参与明确的潜在风险,以及它如何会减少。
- 开发一个应急计划:尽管基于风险的测试的目标是减轻潜在风险,特别重视最有效的风险,有时事情成为漏网之鱼。是否你错过了在测试过程中潜在的风险,这个问题没有妥善解决,或者别的,它总是重要的应急计划,贵公司需要采取什么行动应该任何高风险问题实现。
- 识别风险与启发式的方法:詹姆斯·巴赫建议采取风险识别的启发式方法。这种方法需要你与开发人员和测试人员坐下来问潜在风险的开发人员审查的软件是如何工作的。188金宝搏官网登录app这样做可以让你源直接或问根据需要跟进的问题。在这些讨论中,你应该问潜在的弱点和漏洞,威胁和失败的受害者。你可以把这种启发式方法进一步通过与产品负责人经历相同的过程,利益相关者,甚至最终用户。扩展你的问题这些团体会画一个更完整的图片和帮助确定哪些开发人员没有意识到风险。
- 优先考虑风险使用统计分析:优先考虑风险的最佳方法是使用一个统计分析,重特定风险和影响的严重程度会发生的概率。影响的严重程度而言,你应该考虑问题的临界(例如不安全的信用卡数据远比一个登录故障更为重要),它的可见性,包括用户的数量将遇到的问题(例如,它是一个问题在登录,用户很可能遇到或一个问题在一些深页面,用户不太可能访问),和用户的数量会影响(例如,它适用于所有用户或用户只有一小部分)。当你考虑影响的严重程度,你可以在一个滑动规模等级风险从批判到可以忽略不计。在概率方面,你应该考虑失败的可能性。当你考虑概率时,你可以在一个滑动规模等级风险不可避免的可能。
- 定期监控风险:软件和终端用户/环境变化188金宝搏官网登录app,也将相关的风险。因此,重要的是要定期监控风险,以确定临界状态的变化(由于变化影响的严重性或概率)和确定新的风险和/或风险的诱因。就像最初的风险评估,持续监测应在项目水平和测试团队以外的涉及到利益相关者为了描述最全面的潜在风险。
交付的软件体验用户期望坚如磐石188金宝搏官网登录app的测试
今天的用户技术:他们使用软件几乎在日常生活的方方面面,他们有很高的期望这个软件188金宝搏官网登录app如何工作以帮助他们日常需要更好,更聪明,速度更快。由于这些高期望,软件测试变得越来越重要,与整个软件开发过程交织在一起。188金宝搏官网登录app
就像酒吧已提高了软件测试的实践,这也是提高软件测试人员,他们现在比以往任何时候都更具战略性团队的一部分。188金宝搏官网登录app这些变化为软件测试人员创造了无限的机会,但利用这些机会都始于建立一个坚实的基础的技能,包括开发一个深刻理解的各188金宝搏官网登录app种测试方法,掌握它们的执行。
如果您已经准备好构建基金会通过学习更多关于软件测试的来龙去脉,Tricentis有你覆盖。188金宝搏app苹果下载软件188金宝搏官网登录app
我们将帮你保持脉冲在所有测试通过我们的东西: