当前位置:网站首页>Talk about software testing - automated testing framework
Talk about software testing - automated testing framework
2022-07-24 11:14:00 【Software test automation test】
Whether in automated testing practice , Or in daily communication , I often hear a word : frame . In the process of learning automated testing , Has been to “ frame ” I don't know why this word is .
I've read a lot of automation related materials recently , Add some of your own practice , for “ frame ” With some understanding , This blog , Let's talk about the automation framework ...
One 、 Common automated testing framework
1、 Interface automation framework :
①、java+testNG/Junit+Maven/Ant/Gradle+Jenkins+MySQL+testlink/redmine
②、python+unittest/pytest+Git+Jenkins+MySQL+testlink/redmine
③、python+rebot framework+unittest/pytest+Git+Jenkins+MySQL+testlink/redmine
④、jmeter+Maven/Ant+Jenkins+MySQL+testlink/redmine
2、UI Automated testing framework
①、java+selenium/appium+testNG/Junit+Maven/Ant/Gradle+Jenkins+MySQL+testlink/redmine
②、python+selenium/appium+unittest/pytest+Git+Jenkins+MySQL+testlink/redmine
③、python+rebot framework+unittest/pytest+Git+Jenkins+MySQL+testlink/redmine
Through some common frameworks above , What did you find ?
They all have common characteristics : programing language + Unit test framework + Scan compiler + Continuous integration tools + database + Project management tools .
programing language : Write test script 、 Logging and output ;
Unit test framework : Provide test script to run 、 Configuration of some columns such as exception verification ;
Scan compiler : Scan and compile test files , Generally, it is better to use it with continuous integration tools ;
Continuous integration tools :Jenkins, Classic continuous integration tools ;
database : Test data management ;
Project management tools : Statistical management of test results ;
PS: There are too many automated testing tools , The above just lists some open source tools that are highly used and that I personally know well , Specific frame selection , According to the specific project characteristics and team 、 Personal technical characteristics !
Summary of some understanding and thinking about automated testing framework , That's all , Some of the framework components mentioned may be unreasonable , For reference only , If there are better suggestions , Please point out , Thank you for .
Two 、 Automated testing framework
The components that make up the frame , At least it should have the following functions :

Log: Logging and management functions , For different situations , Set different log levels , Easy to locate problems ;
Report: Test report generation and management and instant notification , Test results respond quickly ;
Source: The configuration file 、 Management of static resources , Follow the principle of high cohesion and low coupling ;
Common: Public function 、 Methods and management of general operations , Follow the principle of high cohesion and low coupling ;
TestCase: Test case management function , A function node corresponds to one or more case, Improve coverage as much as possible ;
TestData: Test data management function , Data is separated from script , Reduce maintenance costs , Improve portability ;
TestSuite: Test component management function , For different scenarios and different needs , Assemble and build different test frameworks , Follow the flexibility and extensibility of the framework ;
Statistics: Test result statistics management function , Statistics of the results of each test execution 、 analysis 、 Comparison and feedback , Data driven , For software optimization and process improvement , Provide reference ;
Continuous: Continuous integration environment , namely CI Environmental Science , Including test document submission 、 Scan compilation 、 Perform the test 、 Generate reports, timely notification and other functions , Continuous integration is the core of automated testing !
3、 ... and 、 automated testing
1、 Why automated testing ?
①、 The regression efficiency of black box test is low
②、 Contingency and uncertainty of manual testing
③、 The coverage of regression is insufficient
④、 The quality of the products delivered is not guaranteed , It's all about assessment
⑤、 The more complex the system is , The more questions
⑥、 Long online time 、 Butterfly effect caused by high failure rate of components ( Fast iteration , Overtime )
2、 What problems can automated testing solve ?
①、 Increase the response rate after the problem
②、 Reduce return costs
③、 Improve return coverage
④、 Improve return efficiency
⑤、 Improve the stability of regression
3、 What are the shortcomings of automated testing ?
①、 Can't reduce the cost of investment , But to speed up the feedback of test results , Improve test quality
②、 Automation is for regression and smoke , Instead of discovering BUG
③、 The recording and playback function is chicken ribs , Visualization is not a good way
④、 Not all system functions are suitable for automatic testing
Four 、 What is a framework
frame (framework) It's a frame —— Refers to Binding , It's also a shelf —— Refers to Supportability . It's a basic conceptual structure , Used to solve or deal with complex problems .
In software engineering , frame (Framework) It's a reusable design of the whole or part of the system , It represents a group of abstract components and methods of interaction between component instances ;
Another definition is , The framework is an application framework that can be customized by application developers , The former is from the application side and the latter is from the purpose side .
The above concept is more abstract , Put it another way :
1、 The framework itself is generally not complete enough to solve specific problems ;
2、 Frameworks are inherently designed for extension ;
3、 The framework can provide many auxiliary components for subsequent extension 、 Supportive, easy-to-use tools , In other words, the framework is supported by some libraries to help solve certain problems (libraries) Or tools (tools).
Binding : The software framework for solving a specific problem will first define the boundary of the problem , Then the relevant software components are constrained within this boundary , Keep the cohesion of the framework in solving problems .
Supportability : The framework itself doesn't solve any problems , But it gives the relevant components to solve the problem a combined foundation , The scientificity and ease of use of this foundation directly affect the scientificity and convenience of further development .
above 2 An explanation and definition of the framework , It doesn't seem to be very simple and straightforward to say what a framework is , Here are some of my understandings :
Definition : Constraining boundaries to solve certain problems , Support the whole problem solution , It is a tool composed of some problem-solving components .
Specific questions : What's the problem? ?—— automated testing
Constrained boundary : Why restrict ?—— Define the scope and purpose of the test
Solution : What solution to the problem ?—— programing language + Tools + other
The components that make up the tool : What components ?—— Use cases 、 Script 、 data 、 journal 、 The report 、 notice
Tools : What are the characteristics ?—— flexibility 、 Extensibility 、 High cohesion and low coupling
5、 ... and 、 summary

Thank everyone who reads my article carefully , Watching the rise and attention of fans all the way , Reciprocity is always necessary , Although it's not very valuable , If you can use it, you can take it :
① 2000 Multiple copies Python e-book ( There should be both mainstream and classic books )
② Python Standard library information ( The most complete Chinese version )
③ Project source code ( Forty or fifty interesting and classic training projects and source code )
④ Python Basic introduction 、 Reptiles 、web Development 、 Big data analysis video ( Suitable for Xiaobai to learn )


⑤ Python Learning Roadmap ( Farewell to bad learning )
The information above In my QQ In the technology exchange group ( Technical exchange and resource sharing , The ad came in and broke your leg )
You can take it by yourself , Group number 953306497( remarks “csdn111”) The free information in the group is the essence of my more than 10 year test career . There is also a great God of the same trade to exchange technology .

边栏推荐
- Redis 100 million level data storage scheme hash slot partition
- Introduction to kubernetes Basics
- MicroBlaze adds a custom IP core and attaches the Axi bus to realize ssd1306 OELD drive
- The solution of permission denied
- Idea background image set
- Talk about new congestion control
- Neo4j installation tutorial
- [golang] deletion and emptying of map elements in golang
- Blue Bridge Cup provincial match training camp - Calculation of date
- PIP update command
猜你喜欢

Analysis of Lagrange multiplier method and its duality

Publish local image to private library

Jmeter-If控制器

Publish local images to Alibaba cloud

Lanqiao cup provincial training camp - stack and recursion

08【AIO编程】

Introduction to kubernetes Basics

Idea hidden Idea folder hides.Iml files

1184. Distance between bus stops: simple simulation problem

《Nature》论文插图复刻第3期—面积图(Part2-100)
随机推荐
Blue Bridge Cup provincial match training camp - Calculation of date
MySQL查询字段匹配某个规则的记录
爬虫与反爬:一场无休止之战
This is the right way for developers to open artifact!
MySQL queries tables and fields according to comments
2022,软测人的平均薪资,看完我瞬间凉了...
Altium one key automatic BOM
Reprint of illustrations in nature, issue 3 - area map (part2-100)
CSDN会员的魅力何在?我要他有什么用?
No one knows what ingredients tiktok's latest popular product pink sauce contains
聊聊软件测试-自动化测试框架
[golang] golang implements simple Memcache
SQL optimization skills and precautions
Build resume editor based on Nocode
2022, the average salary of the soft tester, after reading it, I was instantly cool
Web salted fish self rescue strategy -- typescript classes are not as difficult as you think
FastCGI运行原理及php-fpm参数配置
[live registration] analysis of location cache module and detailed explanation of OCP monitoring and alarm
[golang] before method of time type in golang
神器 ffmpeg —— 操作视频,极度舒适