当前位置:网站首页>[learning] interface test case writing and testing concerns
[learning] interface test case writing and testing concerns
2020-11-06 21:30:00 【Qingqing QQ】
One 、 Why do interface tests
In the daily development process , Someone does front-end development , Someone's in charge of back-end development . Interface is to connect the front and back , Because the speed of front-end development and back-end development may not be the same , For example, the back end is developed , But the front end is not developed . So we don't need to test ? Most of us do function tests , Many are functional tests of the interface . If you understand interface testing , Then you can test the interface .
Two 、 What is an interface 、 What is interface testing
Interface : It is mainly the interaction and interaction between sub modules or subsystems .
The interface here is generalized , The protocol between client and background service ; The interface of communication between plug-ins ; Interface between modules ; As small as a method provided by a class ; Can be understood as interface .
The interface test : It refers to the testing of interfaces between modules or systems .
3、 ... and 、 Interface test process
Demand discussion , Requirements review , Scene design , Write Columns , Prepare the data , Perform the test
Four 、 Interface test case design
1 Use case design for interface testing , Mainly from the input and interface processing two aspects of consideration :
1) For input , It can be designed according to the parameter type ;
2) For interface processing , Use case design can be done according to logic ;
3) For output , Analysis and design can be made according to the results .
2 Design for input
For interfaces , Input is input parameter . Common parameter types are :
(1) Numerical type (int,long,float,double etc. )
(2) String type
(3) An array or list
(4) Structure
5、 ... and . How to test the interface
Through the tool simulation, the client sends the request to the server and receives the data returned by the server to perform the function of the interface , Logic business , abnormal , Security testing
A functional test : Test whether the function of this interface is realized , And test whether the interface is developed according to the interface document ( For example, the interface document specifies some keywords , When I was big, I changed the keywords to other keywords , Because throughout the project cycle , It's not just one development, it's multiple , Therefore, it may be due to the different keywords in the development process that some development functions are abnormal , There are also exceptions to automated scripts )
Logic business , It mainly refers to some logical business dependencies ( For example, when Alipay submits an order, you must ensure that you are logged in , If you don't log in and submit successfully , This is the anomaly , You can modify the requested cookie To test )
Abnormal test : Parameter exception : Key parameters ( Test with other keyword substitutions )、 The parameter is empty. 、 How many parameters ( Add the number by adding parameters ), Parameter error . Data exception : Keyword data ( Fill in the data with other data language data instead of )、 Data length 、 Data is empty 、 Data error .
Because the front and back calls of our project are mainly based on http Interface to protocol , So when testing the interface, it is mainly through tools or code simulation http Sending and receiving of requests . There are many tools like :apipost、jmeter、java+httpclient、robotframework+httplibrary etc. .
– It can also be used. Interface automation to achieve , It's code implementation , The framework and UI Automation is almost , Send request to judge by assertion .
6、 ... and 、 Tools for interface testing
Common tools for interface testing ,fiddler Grab request ,apipost Simulate the client by fiddler The request is modified and sent to the server and receives the data and exception returned by the server to verify the interface . Tools are not fixed , You need to choose according to the project .
7、 ... and 、 Typical problems found in interface testing
Interface testing often encounters bug And questions , as follows :
(1) Improper handling of incoming parameters , Cause procedure crash;
(2) Type overflow , Result in inconsistent data reading and writing ;
(3) Because the object permission is not checked , Access to sensitive information from other users ;
(4) Improper state handling , It leads to the confusion of logic ;
(5) The logic check is not perfect , We can take advantage of loopholes to gain illegitimate benefits .
Tools download link :
ApiPost - Directly generated documents API debugging 、 Management tools
版权声明
本文为[Qingqing QQ]所创,转载请带上原文链接,感谢
边栏推荐
- An article will take you to understand CSS3 fillet knowledge
- NAND FLASH的接口控制设计
- 2020-08-18:介绍下MR过程?
- How to prepare for the system design interview
- How much disk space does a file of 1 byte actually occupy
- Staying up late summarizes the key points of report automation, data visualization and mining, which is different from what you think
- Behind the record breaking Q2 revenue of Alibaba cloud, the cloud opening mode is reshaping
- Ronglian completed US $125 million f round financing
- Call analysis of start method in JNI thread and callback analysis of run method
- The native API of the future trend of the front end: web components
猜你喜欢
意外的元素..所需元素..
Building a new generation cloud native data lake with iceberg on kubernetes
Look! Internet, e-commerce offline big data analysis best practice! (Internet disk link attached)
2020-08-30:裸写算法:二叉树两个节点的最近公共祖先。
预留电池接口,内置充放电电路及电量计,迅为助力轻松搞定手持应用
list转换map(根据key来拆分list,相同key的value为一个list)
检测证书过期脚本
Filecoin has completed a major upgrade and achieved four major project progress!
From overseas to China, rancher wants to do research on container cloud market
What is the purchasing supplier system? Solution of purchasing supplier management platform
随机推荐
2020年第四届中国 BIM (数字建造)经理高峰论坛即将在杭举办
2020-09-09:裸写算法:两个线程轮流打印数字1-100。
Using iceberg on kubernetes to create a new generation of cloud original data Lake
An article will introduce you to HTML tables and their main attributes
An article takes you to understand CSS pagination examples
list转换map(根据key来拆分list,相同key的value为一个list)
How does cglib implement multiple agents?
2020-08-24:什么是小文件?很多小文件会有什么问题?很多小文件怎么解决?(大数据)
What is the tensor in tensorflow?
ES6 learning notes (2): teach you to play with class inheritance and class objects
Share with Lianyun: is IPFs / filecoin worth investing in?
ES6 learning notes (5): easy to understand ES6's built-in extension objects
细数软件工程----各阶段必不可少的那些图
An article will take you to understand SVG gradient knowledge
Zero basis to build a web search engine of its own
In depth to uncover the bottom layer of garbage collection, this time let you understand her thoroughly
Stickinengine architecture 12 communication protocol
谷歌浏览器实现视频播放加速功能
Python basic data type -- tuple analysis
An article takes you to understand CSS3 picture border