当前位置:网站首页>Software testing and quality learning notes 3 -- white box testing
Software testing and quality learning notes 3 -- white box testing
2022-07-06 11:09:00 【Pingguo stuffed with rice cakes】
1. Two kinds of white box test Common technology :
Coverage test : During the test , Tests that aim to cover certain program elements .
Path test : Speaking from the flow chart , One execution of the program corresponds to a path from entry to exit , Path tests are path tests . In a broad sense , Any test related to path analysis can be called path test .
2. White box testing -- The basic path method
On the premise that all paths cannot be covered , If every independent path of a program has been tested , Then it can be considered that every statement in the program has been verified , That is, the statement coverage . This test method is commonly known as Basic path test method .
3. The control flow chart
It can be abbreviated as flow graph , It is obtained by simplifying the program flow chart , It can more prominently represent the structure of program control flow .
The control flow diagram includes two graphical symbols : Nodes and control flow lines .
node Represented by a marked circle , It can represent one or more statements 、 A sequence of processing boxes and A condition decision box .
Control flow line Represented by an arc or line with an arrow , Can be called edge . It represents the control flow in the program .
Be careful : Every circle Representing control flow graph node , It can represent one or more statements . The number in the circle corresponds to the number of a line in the program ( That is, you can write multiple numbers ). The arrow represents the direction of the edge , That is, control the flow direction
See the picture for details
among , Nodes that contain conditions are called decision nodes ( Also called predicate node ), The edge from the decision node must end at a node , The range bounded by edges and nodes is called a region .
4. Graph matrix
The graph matrix is Matrix of control flow graph Representation form .
The graph matrix is a square matrix , Its dimension is equal to the number of nodes of the control flow graph . Each column and row in the matrix corresponds to the identified node , Matrix elements correspond to edges between nodes .
Usually , In the control flow diagram Nodes are identified by numbers , The side is marked with letters . If in the control flow diagram, from i Node to j Nodes have an ID of x The edges of are connected , Then in the corresponding graph matrix The first i Xing di j Column There is a non empty element x.
5. Ring complexity and its calculation method
Ring complexity is also called cycle complexity , Based on graph theory , It provides us with very useful software metrics . The ring complexity can be calculated by one of the following two methods :
Method 1: Given control flow diagram G Ring complexity 1 v(G), Defined as
v(G)=E-N+2 Ring complexity = The number of sides - Number of nodes +2
among ,E Is the number of edges in the control flow graph ,N Is the number of nodes in the control flow graph .
Method 2: Given control flow diagram G Ring complexity 1 v(G), It can also be defined as
v(G)= P+1 Ring complexity = Determine the number of nodes +1
among ,P Is the control flow diagram G Determine the number of nodes in .
6. Independent path
It refers to the program path in which at least a new set of processing statements or a new condition is introduced into the program .
Adopt the terminology of flow graph , That is, the independent path must Include at least one edge that has not been used before defining the path this time .
Be careful :“..." Indicates that the remaining paths are optional , The reason is that there is a circular structure .
7. Basic path test method test steps
· Basic path test steps :
1. Draw the control flow diagram of the program
2. Computational flow graph G The complexity of the loop V(G)
3. Determine the basic path set that contains only independent paths
4. According to the independent path above , Design test cases , Make the program follow the above
Independent path execution .
边栏推荐
- MySQL 20 MySQL data directory
- Remember a company interview question: merge ordered arrays
- 虚拟机Ping通主机,主机Ping不通虚拟机
- npm一个错误 npm ERR code ENOENT npm ERR syscall open
- Remember the interview algorithm of a company: find the number of times a number appears in an ordered array
- Swagger、Yapi接口管理服务_SE
- Detailed reading of stereo r-cnn paper -- Experiment: detailed explanation and result analysis
- Why is MySQL still slow to query when indexing is used?
- JDBC principle
- Software testing - interview question sharing
猜你喜欢
QT creator shape
Neo4j installation tutorial
Basic use of redis
[recommended by bloggers] C # generate a good-looking QR code (with source code)
打开浏览器的同时会在主页外同时打开芒果TV,抖音等网站
【博主推荐】C#生成好看的二维码(附源码)
Invalid global search in idea/pychar, etc. (win10)
[C language foundation] 04 judgment and circulation
Swagger、Yapi接口管理服务_SE
[number theory] divisor
随机推荐
Ansible实战系列三 _ task常用命令
A brief introduction to the microservice technology stack, the introduction and use of Eureka and ribbon
Neo4j installation tutorial
QT creator specifies dependencies
CSDN question and answer module Title Recommendation task (I) -- Construction of basic framework
虚拟机Ping通主机,主机Ping不通虚拟机
MySQL completely uninstalled (windows, MAC, Linux)
Did you forget to register or load this tag 报错解决方法
【博主推荐】C#生成好看的二维码(附源码)
[BMZCTF-pwn] 12-csaw-ctf-2016-quals hungman
Basic use of redis
Idea import / export settings file
MySQL完全卸载(Windows、Mac、Linux)
CSDN问答标签技能树(一) —— 基本框架的构建
SSM整合笔记通俗易懂版
IDEA 导入导出 settings 设置文件
The virtual machine Ping is connected to the host, and the host Ping is not connected to the virtual machine
Navicat 導出錶生成PDM文件
Ansible实战系列一 _ 入门
Attention apply personal understanding to images