软件测试 测试策略

Testing is a process of checking any software for its correctness. Various strategies are followed by the testers while checking for the bugs and errors in the software. Let us have a look at these strategies:

测试是检查任何软件的正确性的过程。 测试人员在检查软件中的错误和错误时会遵循各种策略。 让我们看一下这些策略:

声明范围 (Statement Coverage)

The strategy here is to design test suites such that every statement of the software program is executed at least once. It is very important while testing software that every single of the program is executed because unless a statement is executed, we cannot determine whether it is error-free or not.

这里的策略是设计测试套件,以使软件程序的每个语句至少执行一次。 在测试软件时,必须执行程序的每一步,这一点非常重要,因为除非执行一条语句,否则我们无法确定它是否没有错误。

This type of thing should be taken at most care when there are conditional statements in the program (like if-else). The test cases should be chosen in such a way that every condition is fulfilled at least once in any of the test cases.

当程序中有条件语句时(例如if-else),这种事情应格外小心。 选择测试用例的方式应使任何一个测试用例中的每个条件至少满足一次。

分行覆盖 (Branch Coverage)

Branch testing is also known as edge testing. In the branch coverage testing strategy, the test cases are designed in such a way that both valid and invalid values are checked for that particular branch or edge. Then, according to the test cases, the result of the branch statements is assumed for true or false.

分支测试也称为边缘测试。 在分支覆盖测试策略中,测试用例的设计方式是针对该特定分支或边缘检查有效值和无效值。 然后,根据测试用例,假设分支语句的结果为是或否。

It is a stronger testing strategy than the statement coverage testing strategy because it ensures statement coverage as well as ensures that each edge condition to assume true and false values in turn.

与语句覆盖率测试策略相比,它是一种更强大的测试策略,因为它可以确保语句覆盖率,并确保每个边缘条件依次采用真值和假值。

条件覆盖 (Condition Coverage)

The condition testing strategy is a much more stringer strategy than both branch coverage and statement coverage strategies. In this technique of testing, the tester looks forward to reach every possible condition available in the program code. Now, with every condition fulfilled, comes another set of values that the particular block can have as an input. All these cases are covered in the condition coverage strategy of testing. Therefore, it assumes true and false values for every composite conditional expression, leading to a requirement of 2n test cases where n conditions are available in the program code. However, as the number of test cases in this strategy increases exponentially with the increase in the number of conditions available, it is suitable to perform this type of testing only for smaller values of n or can also be performed where the testing process is automated one.

与分支覆盖和语句覆盖策略相比,条件测试策略要严格得多。 在这种测试技术中,测试人员期待达到程序代码中可用的所有可能条件。 现在,在满足所有条件的情况下,出现了特定块可以具有作为输入的另一组值。 所有这些情况都包含在测试的条件覆盖策略中。 因此,它为每个复合条件表达式都假设为真和假值,从而导致需要2n个测试用例,其中程序代码中有n个条件可用。 但是,由于此策略中的测试用例数量随可用条件数量的增加呈指数增长,因此仅对较小的n值执行这种类型的测试是合适的,或者也可以在测试过程自动化的情况下执行。

路径覆盖 (Path Coverage)

The path coverage strategy is based on the inter-dependency of the modules on each other. The output of one module can affect the processing of the other modules. Also, a single change in the output generated by initial modules may result in a complete change in the subsequent modules. Therefore, this type of testing strategy aims to cover all the linearly independent paths available in the program. However, this type of testing requires even more test cases than the condition coverage strategy when the number of linearly independent paths is high, but still is an effective way of thoroughly checking the software for any bugs.

路径覆盖策略基于模块之间的相互依赖性。 一个模块的输出会影响其他模块的处理。 同样,初始模块生成的输出中的单个更改可能会导致后续模块中的完整更改。 因此,这种测试策略旨在覆盖程序中所有可用的线性独立路径。 但是,当线性独立路径的数量很多时,这种类型的测试需要比条件覆盖策略更多的测试用例,但仍然是彻底检查软件中任何错误的有效方法。

翻译自: https://www.includehelp.com/basics/strategies-of-testing-software-engineering.aspx

软件测试 测试策略

软件测试 测试策略_测试策略| 软件工程相关推荐

  1. visionmaster视觉软件说明书_测试策略与软件需求层次

    1.需求层次 在软件开发过程中,需求一般有三个层次,第一层是用户有个想法.困难或者痛点,称作为用户需求:基于用户需求进行可行性分析和价值分析后,在众多解决用户需求的方案,选择一条最优解方案,称之为业务 ...

  2. 软件测试工程_绪论笔记

    标签: #课程 更新:2021-09-17 11:09 链接: 理论 测试的相关定义: 发现软件缺陷,保证(某个可靠度的)软件质量 在不测试的代价超过测试的代价之前,进行测试(尽早启动) 工程专业的特 ...

  3. 软件工程职业_关于软件工程职业的7个关键思考

    软件工程职业 1:做自己喜欢的事 (1 : Do What You Love) First of all I'd like to say if you're in software engineeri ...

  4. 软件测试论坛_浅谈软件测试的未来,我们该如何做好准备

    (松勤软件测试讯)如果你打算从事软件测试工作,那么了解这个行业的发展方向以及软件测试的未来是很重要的.当我10年前开始作为软件测试员的职业生涯时,测试并没有现在那么重要.虽然,每个有开发人员开发应用程 ...

  5. 计算机网络工程实验分析与体会_《软件工程》面向对象分析实验

    面向对象分析实验报告要求 1目的与要求: 1)系统学习和理解面向对象软件工程分析与设计阶段的基本任务.过程以及基本概念.原理.技术和方法: 2)掌握OOA阶段的建模方法和建模工具,如对象模型.动态模型 ...

  6. ar软件测试工具_如何为用户测试制作快速的AR原型

    ar软件测试工具 We had a project recently with an element of AR-based interaction, which it turned out was ...

  7. 软件工程项目总结_复旦大学软件工程实验室来ASE实验室交流

    2020年12月11日下午,复旦大学彭鑫教授一行与我院多智能体软件工程实验室开展科研工作交流.本次交流会议旨在为双方建立沟通桥梁,探讨研究问题,谋划后续合作,促使双方增进了解.加强互动.互相学习.共同 ...

  8. 软件工程 质量问题_软件质量| 软件工程

    软件工程 质量问题 软件质量 (Software Quality) Software Quality is the degree of agreement too direct or indirect ...

  9. 失效日期 软件测试案例_软件异常测试

    日期类型测试:日期类型要测试其边界值和日期格式类型的有效性测试.对于日期类型的边界值可能根据数据库不同而不同,比如sql server的最小日期是1753年1月1日:而对于有效性最常用的就是闰年的有效 ...

最新文章

  1. opencv 手选roi区域_利用opencv进行眼动检测
  2. 2060 : Minsum Plus(贪心)
  3. Dubbo 只注册,只订阅
  4. visual studio 代码提示_《微软模拟飞行2020》代码暗示下一代Xbox或支持VR
  5. Swift 2.0初探:值得注意的新特性
  6. CNCC 技术论坛 | 知识图谱赋能数字经济
  7. 六部门集中约谈8家网约车顺风车平台 要求加快合规步伐
  8. C语言丨栈(一):顺序栈
  9. 微信qq一键登录php代码6,Laravel6实现第三方 微信登录
  10. MSN Messenger协议
  11. 自学网络 arp_ignore/arp_announce
  12. 计算机设计大赛感言,平面设计大赛获奖感言
  13. 网站地图Sitemap怎么制作
  14. 在Ubuntu 8.10 中安装使用新一代输入法ibus Deb包下载
  15. 消息队列RabbitMQ基本使用(Java代码实现)
  16. 生物医学英语翻译,翻译公司的标准有哪些
  17. 苹果开始向全球扩展iAd平台
  18. 顺丰bsp系统 java_顺丰BSP接口SOAP的请求示例
  19. 在线网页版鸡乐盒html源码
  20. Tomcat安装、配置、简单使用(手机访问)

热门文章

  1. python快递费用计算_[Python]简单用Python写个查询快递的程序最后附源代码
  2. 获取http地址如何从上面抓取图片_用 Python 自动抓取妹子图
  3. JDK源码解析之 java.lang.Long
  4. Loadrunner的基本概念
  5. Oracle关联查询-数据类型不一致问题 ORA-01722: 无效数字
  6. Kubernetes在上汽集团云平台及AI方面的应用
  7. 6.6(java学习笔记)文件分割(IO综合例子)
  8. pythonchallenge_level2
  9. 微软免费软件项目DreamSpark更名为Microsoft Imagine
  10. iOS开发-自定义UIAlterView(iOS 7)