Introduction to Software Testing

Going to Learn …….

Evolution of The Software Industry.

Errors, Faults, and Failures

Type of Faults

Classification of Failures

Need for Testing

Engineering approaches to developing correct systems

Role of Specification

When to finish testing

Evolution of The Software Industry

Software industry begins in 1950s.

The independent software industry was established in 1969.

Mass consumption of software product begins in 1981 on words.

The World Wide web arrived at the 1990s

And Mobile devices arrived at the 2000s

In 2010, Top 500 companies in all over the world gained

$492 billion.

Errors, Faults, and Failures

Error:

  • Mistakes made by software developers.
  • Thet exist it may lead to the one or more faults in the software.

Example:

  • Spelling Mistakes
  • Missing Branches

Faults :

  • It consists of incorrect materials in the , and can be the product of one or more error.
  • This led to failure during the execution.

Purpose of the Classification

1、When analyzing/designing/coding software, where are acts as a checklist of faults to avoid?

2、When developing Software test, where it acts as a guide to likely faults.

3、When undergoing Software process evaluation or improvement, where it provides input data.

Fault Types

  1. Algorithmic: Due to the algorithm design , software produced incorrect output for given input.
  2. Syntax: The specified programming language and source code are not confirmed.
  3. Computation and Precision: Used formula does not calculate the expected accuracy and precision.
  4. Stress or Overload: The system fails to operate correctly when it is Overloaded.
  5. Capacity and Boundary: The system fails to operate correctly when data stores are filled beyond their capacity.
  6. Timing or Coordination: During the real-time process the system not cooperate with several concurrent processes.
  7. Throughput or Performance: The System does not meet its specified throughput or other performance requirements.
  8. Recovery: The system does not recover to the excepted performance even after a fault is detected and corrected.

Classification of Failures

Behavior

Failure Severity Level

Failure causes a system crash and the recovery time is extensive or failure causes a loss of function and data and there is no workaround.

Failure causes a loss of function and data but there is a manual workaround to temporarily accomplish the tasks.

Failure causes a partial loss of function and data where the user can accomplish most of the tasks can still be accomplished.

Failure causes cosmetic a minor inconvenience where all the user tasks can still be accomplished.

why software has faults

There are a number of reasons why software has faults.

  • It is difficult to collect the user requirements correctly
  • It is difficult to specify the required software behavior correctly.
  • It is difficult to implement software correctly
  • It is difficult to modify software correctly.

Engineering Approaches

Forward Engineering:

  • The development starts with the user, and ends with the correct implementation.

  • Each activity is based on the output of previous activity

    and produced correct outputs.

  • The end product matches its and meets the

Based on Feedback: ( Reverse Engineering)

  • All the development steps, are subject to mistakes and ambiguities, leading to non-ideal results.
  • To resolve this, each of the steps must be subject to check to ensure that it has been carried out properly,
  • To provide an opportunity to fix any mistakes before proceeding .

Role of Specification

Specification plays a key role in testing.

For the testing, the correct behavior of the software must be known.

This implies the need for detailed specification or software

requirements.

For testing the code,Specification must describe both normal and error behavior.

Normal Behavior: is the expected output when the inputs are not in error.

Error Behavior: is the expected output when one or more inputs are in error or will produce an error in processing.

Testing in the Development Process

The software of any degree of complexity has three key characteristics:

  1. User Requirements, stating the needs of the software users.
  2. Functional specifications, stating what the software must do.
  3. A number of modules, that are integrated together to form the final system

Types of Testing

Unit Testing: An individual unit of Software is tested to make sure it works correctly.

Unit Testing

Integrated Testing: Two or more units are tested to make sure they interoperate correctly.

interoperate

交互操作

System Testing: The entire software system is tested as a whole to make sure it works correctly.

correctly

Acceptance Testing: the entire Software system is tested as a whole to make sure it meets the user’s needs, or solve’s the user’s problem, or passes a set of tests developed by the user

Acceptance

n. 接纳;赞同;容忍

Test Automation

Manual testing is slow, error-prone, and hard to repeat.

Unit tests are automation by default,

error-prone 有…倾向的

Features of Automation Testing:

Automated test execution,

Automated Collection of results,

Automated Evaluation of results, 评估

Automated Report generation,

Automated Measurement of test coverage,

Automated Generation of test data.

When to finish testing

From a budgetary point of view: when the time or budget allocated for testing has expired.

From an activity point of view: when the software has passed all of the planned tests.

From a risk management viewpoint : when the predefined failure rate meets the quality criteria.

adj. 预算的 budgetary

criteria n. 标准,条件

【Software Test】Introduction to Software Testing的更多相关文章

  1. 【刷题】若串 =’software’ ,其子串数目为:37

    子串 子串是母串中的一部分,可以是母串本身,也可以是空字符串 设串中字符数为n,则其子串数目为:s=(1+n)*n/2+1 具体地: 长为0的子串:1 长为1的子串:8 长为2的子串:7 长为3的子串 ...

  2. 【Xamarin Doc】 Introduction to Storyboards 笔记

    http://developer.xamarin.com/guides/ios/user_interface/introduction_to_storyboards/ Segues There are ...

  3. 【读书笔记】《Computer Organization and Design: The Hardware/Software Interface》(1)

    笔记前言: <Computer Organization and Design: The Hardware/Software Interface>,中文译名,<计算机组成与设计:硬件 ...

  4. 【Software Test】Basic Of ST

    文章目录 Learning Objective Introduction Software Applications Before Software Testing What is testing? ...

  5. Software Engineering: 1. Introduction

    Resource: Ian, Sommerville, Software Engineering 1. Professional software development 1.1 Software e ...

  6. G1垃圾收集器官方文档透彻解读【官方解读】

    在前几次中已经对G1的理论进行了一个比较详细的了解了,对于G1垃圾收集器最权威的解读肯定得上官网,当咱们将官网的理解透了,那基本上网上对于G1的说明其实最终都是来自于官网,所以接下来会详细来解读Ora ...

  7. Windows平台手动卸载Oracle Server【完整+干净】

    使用Oracle自带的Universal Installer卸载存在问题: 不干净,不完全,还有一些注册表残留,会影响到后来的安装. 所以,推荐使用手工卸载Oracle. 1.[win+R]-> ...

  8. 【静默安装】configToolAllCommands响应文件问题

    [静默安装]configToolAllCommands响应文件问题 客户在静默安装RAC 12.1.0.2的时候有如下的输出: Successfully Setup Software. As inst ...

  9. 【第一篇】Android环境搭建

    安装不易,且安且珍惜! 1 下载 Java JDK (http://java.sun.com/javae/downloads/ ) (Windows 版) [配置环境变量]:安装完成后,设置JAVA_ ...

随机推荐

  1. java和python的时间格式化区别

    java 和 python时间格式化区别 月份,java是M,python是m 分钟,java是m,python是M 年份,必须用yyyy,表示当天所在的年份,如果用YYYY,则表示当前周所在年份 j ...

  2. 【智简联接,万物互联】华为云·云享专家董昕:Serverless和微服务下, IoT的变革蓄势待发

    摘要:Serverless.微服务,这些新技术和IoT有什么关系?纵观IoT行业的发展,云服务又扮演了什么角色? IoT并不是一个新名词.新技术,很长一段时间,它甚至给人一种"下工地&quo ...

  3. flink连接器-流处理-读写redis

    写入redis resultStream.addSink(new RedisSink(FlinkUtils.getRedisSinkConfig(parameters),new MyRedisMapp ...

  4. Linux 搭建ELK日志收集系统

    在搭建ELK之前,首先要安装Redis和JDK,安装Redis请参考上一篇文章. 首先安装JDK及配置环境变量 1.解压安装包到/usr/local/java目录下[root@VM_0_9_cento ...

  5. QEMU/KVM网络模式(二)——NAT

    在QEMU/KVM中,默认使用IP伪装的方式去实现NAT,而不是用SNAT或DNAT的方式. 1.安装软件包 # yum -y install bridge-utils iptables dnsmas ...

  6. SVN 使用教程 命令 visual studio 使用SVN

    首先推荐大家一个应该是国内外最好的SVN仓库,不限私有,不限成员:https://svnbucket.com/ SVN官网 https://tortoisesvn.net/downloads.html ...

  7. 微信小说分销系统设计之使用百度Echarts地图统计功能统计微信粉丝地域分布情况

    /** 转载请保留博客园原地址以及版权声明,请勿恶意修改,本博客中的内容均属于技术交流,请勿用于商业用途,谢谢配合 *  作者:杨浩瑞  QQ:1420213383  独立博客:http://www. ...

  8. 如何做好Code Review

    Code Review(代码审查)很多团队都会做,效果如何不好说.如果你能轻易地从一堆出自正经团队之手的代码里找出几个低级错误,往往意味着团队管理者长期忽视了Code Review的重要性. 根据经验 ...

  9. 学习一下 SpringCloud (二)-- 服务注册中心 Eureka、Zookeeper、Consul、Nacos

    (1) 相关博文地址: 学习一下 SpringCloud (一)-- 从单体架构到微服务架构.代码拆分(maven 聚合): https://www.cnblogs.com/l-y-h/p/14105 ...

  10. 运行jar提示“没有主清单属性”的解决方法

    以下记录的是我export jar包后运行遇到问题的解决方法,如有错误,欢迎批评指正. 1.运行导出jar包,提示"没有主清单属性" 2.回想自己导出jar的操作是否有误,重新ex ...