当前位置:网站首页>Introducing QA into the software development lifecycle is the best practice that engineers should follow
Introducing QA into the software development lifecycle is the best practice that engineers should follow
2022-07-04 22:27:00 【Uncle meow】
In order to meet the business needs , Avant garde companies will QA Embedded in SDLC in . This article will take you through what should be introduced at each development stage QA Activities .
Almost indisputable , Speed and innovation are the pillars of efficient product delivery , This contributes to success in today's market . With the ability to smoothly introduce new technologies and release practical software faster , The company is on the way from COVID-19 Pandemic and its consequences recover and adjust to " The next normal " On the road .
To do this confidently and ensure that the software meets the planned business needs , Avant garde companies will QA Introduced into the software development lifecycle (SDLC) in .
QA It is an integral part of all process stages , It helps to avoid fixing critical defects 、 There are unforeseen costs in improving software reliability and security and reducing the risk of sudden system downtime . In addition to improving functions ,QA It will also measure the impact on the business of publishing functions to the production environment in the current state , So as to improve customer loyalty and promote overall sales .
that , What should be introduced in each development stage QA Activities ? Let's read the answers in this article carefully .
SDLC Of 4 The necessary best practices in the three stages
waterfall 、 Agile 、 Rapid application development (RAD)、 Spiral model … According to the characteristics of methods and products , Different stages of the development process are slightly different . however , No matter which method your company adheres to , At every SDLC Testing at all stages becomes critical .
This is a real case : A few years ago , Samsung recalled 250 Thousands of Note7 A smart phone , Causing billions of dollars in losses . This is all because of software defects —— Bottleneck of battery management system —— Be responsible for monitoring and stopping the charging process , Cause overcharge and explosion .
Unfortunately , This is not uncommon . therefore , In order to maximize development efficiency and reduce financial and reputation losses caused by repairing defects found later , I suggest that you consider the necessary at each basic development stage QA Activities .
One 、 Demand collection
If you don't know the target audience 、 Problems solved by application 、 performance 、 Security 、 Compliance and many other standards , It is impossible to plan development and testing .
Considering that the cost of repairing defects increases exponentially at each stage ,QA Engineers need to perform requirements testing , To reduce rework from the beginning , And found IT Errors in the business logic of the solution 、 Ambiguity or inconsistency .
When testing requirements , Experts confirm the function of the product 、UI、 The necessary hardware and software standards are consistent 、 Clear and error free . This allows for further creation of trouble free test plans 、 The test case 、 Use cases 、 Traceability matrix and other artifacts .
However , Testing is only half the battle . The hallmark of a test document is its dynamic nature . In the absence of any updates , It gradually becomes worthless , These updates are driven by changing needs 、 Shifting priorities or constantly transferring new code to the production environment . therefore , In addition to testing ,QA The team must also update the test documentation in a timely manner , To eliminate any process failures .
Two 、 Analysis and design
Based on the results of the previous stage , The development team designs the architecture of the upcoming application and creates its prototype .
To ensure the commercial success of the product ,QA The team starts with prototype testing , To find out early based on customer feedback SDLC Problems in , And introduce the necessary changes before the development starts . By focusing on identifying logical defects that may cause system failure in the future , Engineers significantly reduce the time and financial work required for the additional software creation process .
Pay special attention to the usability testing of prototypes . This is only the first step in providing an engaging design , Some limitations must be considered , Because they may affect the test results at this stage . for example , Poorly conceived color arrays may lack intuitive elements on the screen , Thus, the use of the product becomes complicated . Keeping them in mind helps determine the tests needed and better grasp the results .
3、 ... and 、 software development
Let's see how software testing activities can help deliver flawless products . for example , Unit tests individually verify each application component that can be logically isolated in the system , To ensure that its behavior conforms to the design .
Pass appropriate unit tests , Developers can confidently implement code refactoring , Make the workflow more agile , And find software problems as soon as possible , Make sure to simplify the integration and debugging process , And greatly reduce the cost of repairing defects .
The tested units now form modules , These modules in turn create a complete system . After unit testing , Integration verification can help software engineers ensure that these system components written by different teams integrate harmoniously with each other .
Agility and DevOps Unit and integration testing in ecosystems can often be automated , To significantly shorten the test time 、 Maximize test coverage 、 Reuse the same test case many times and avoid human factors .
When developers focus on executing unit and integration tests ,QA The team will create testing tools to ensure high software quality and prepare functions for release . In order to succeed , Here you are 10 Test types , According to product details and business needs , These types may come in handy :
1、 A functional test
from the beginning , Functional testing ensures that there are no key problems that may hinder further testing , And ensure that the recently added functions have been fully realized , Without affecting the logic of the product .
2、 Performance testing
Pass the server-side performance test ,QA Engineers evaluate whether the system can withstand the load , Discover its weakness , And provide detailed suggestions for improvement . This helps reduce software TCO And establish effective performance monitoring .
Client performance QA Can measure HTML Page loading and rendering time , And find out what affects the customer experience ( Heavy interface 、 Long response time 、 Poor overall performance ) And hinder the pleasant interaction with the brand .
3、 Network security testing
be based on OWASP The manual and automatic vulnerability assessment of the method can find security vulnerabilities , And ensure a high degree of protection for user sensitive data . By injecting the best safety measures as early as possible SDLC, Companies can minimize the risk of malicious intruders performing attacks and save their reputation .
4、 automated testing
Because fast quality is the cornerstone of agile methods and efficient product delivery , Therefore, using automated testing is faster to build 、 Methods of testing and delivering high-quality software .
To achieve these goals ,QA Engineers defined the scope of automation and toolkits 、 Implement the required framework 、 Configuration environment 、 Prepare test data and develop scripts , Analyze test results , At the same time, it provides comprehensive support and monitoring for automated testing .
5、 Cross browser testing
Determine whether the application can run seamlessly in different browsers , This helps to provide an engaging user experience and expand the target audience . So ,QA Engineers analyze browser usage statistics in different regions , Choose the most popular variant , And perform tests to ensure the consistency of software operation .
6、 Cross platform testing
The more operating systems compatible with software , The more customers a company can attract . therefore QA Suppliers will perform tests to discover operating system level performance 、UI Inconsistencies and platform specific failures , And ensure that the software runs as designed under the minimum system requirements .
7、 Mobile app testing
according to Statista The data of , To 2023 The global profits brought by mobile applications will exceed 9350 Billion dollars . With the increase of global downloads , The fierce competition in the market forces the company to consider its quality more and introduce QA. In order to improve the efficiency and accuracy of the results , The provider will test on real equipment .
8、 Accessibility test
As stated by who , There are more than 10 Hundreds of millions of people ( Of the world's population 15%) Have specific physical or cognitive impairment , Therefore, designing software suitable for all social groups has become the primary goal . By verifying whether it conforms to WCAG 2.1 or AODA International standards , Companies can take care of target audiences and expand their customer base .
9、 Localization testing
In meeting specific countries / Regional languages 、 Cultural and regional requirements , Software for the international market bears the brunt . To customize products , Make it seen by the target audience as a unique solution that meets their needs ,QA Engineers focus on :
- Local regulations ( for example , Comply with data privacy laws )
- In terms of culture ( for example , Avoid offensive symbols or inappropriate colors )
- User experience ( for example , date 、 Layout of address and currency )
- Visual materials ( for example , Must meet cultural expectations )
- Script ( for example , From content to UI All aspects of are displayed according to the established language rules )
10、 Usability testing
By evaluating how easy it is for users to adapt to application design and perform different tasks ,QA Engineers can find defects that they may overlook in the prototype design process , To ensure that the user's use process is as transparent as possible 、 Intuitive and simple .
Four 、 Deployment and maintenance
Before the long-awaited release , User acceptance tests must be carried out , To ensure that the software can be put into production , Meet all user needs and business needs , And ensure that the possibility of missing any defects is the lowest .
Once reached UAT Launch standards , The team will release functions . Usually, every company will set its own indicators , For example, the number of tests successfully completed or the percentage of different severity problems identified .
Once the release is over , New features are coming , This means that every time code changes are delivered to the production environment ,QA Teams must perform regression tests , To ensure that the modified software will not affect the existing functions .
By analyzing potential risk areas and performing multiple rounds ( Three rounds at most ) Regression testing and intermediate defect verification ,QA Engineers can improve software quality and steadily improve software applications .
Use QA Build reliable IT product
To provide attractive software solutions to attract target audiences , The company can QA Inject into the whole software development life cycle , Instead of completing the task after the development , send QA Engineers are overloaded .
therefore , The company is at the core SDLC The basic quality assurance practices adhered to at this stage should include :
- Requirements testing during planning
- Prototype and usability verification in the design process
- Creation of test documents and comprehensive testing , In order to improve product quality in the development stage
- In the support phase after deployment and release UAT And regression testing
When QA When applied to complex environments , These efforts can help organizations reduce operating costs , Because they can find software problems early , So as to minimize the repair cost and improve the development speed , And thoroughly tested from the beginning , Therefore, the possibility of rework is very small .
边栏推荐
- How to reset the password of MySQL root account
- AscendEX 上线 Walken (WLKN) - 一款卓越领先的“Walk-to-Earn”游戏
- 2022-07-04: what is the output of the following go language code? A:true; B:false; C: Compilation error. package main import “fmt“ func main() { fmt.Pri
- 并发网络模块化 读书笔记转
- 机器人相关课程考核材料归档实施细则2022版本
- 1807. 替换字符串中的括号内容
- Xiangjiang Kunpeng joined the shengteng Wanli partnership program and continued to write a new chapter of cooperation with Huawei
- 玩转gRPC—深入概念与原理
- Jvm-Sandbox-Repeater的部署
- How can the advertising system of large factories be upgraded without the presence of large models
猜你喜欢
Scala下载和配置
[advanced C language] array & pointer & array written test questions
机器学习笔记 - 互信息Mutual Information
[Yugong series] go teaching course 003-ide installation and basic use in July 2022
Radio and television Wuzhou signed a cooperation agreement with Huawei to jointly promote the sustainable development of shengteng AI industry
Logo special training camp section 1 Identification logo and logo design ideas
With this PDF, we finally got offers from eight major manufacturers, including Alibaba, bytek and Baidu
【愚公系列】2022年7月 Go教学课程 003-IDE的安装和基本使用
A large number of virtual anchors in station B were collectively forced to refund: revenue evaporated, but they still owe station B; Jobs was posthumously awarded the U.S. presidential medal of freedo
Redis sentinel simply looks at the trade-offs between distributed high availability and consistency
随机推荐
[Yugong series] go teaching course 003-ide installation and basic use in July 2022
Deployment of JVM sandbox repeater
Xiangjiang Kunpeng joined the shengteng Wanli partnership program and continued to write a new chapter of cooperation with Huawei
Implementation rules for archiving assessment materials of robot related courses 2022 version
Tiktok actual combat ~ the number of comments is updated synchronously
# 2156. Find the substring of the given hash value - post order traversal
Why do you have to be familiar with industry and enterprise business when doing Bi development?
Interview essential leetcode linked list algorithm question summary, whole process dry goods!
WebGIS framework -- kalrry
sqlserver对数据进行加密、解密
How can the advertising system of large factories be upgraded without the presence of large models
UML diagram memory skills
【米哈游2023届秋招】开启【校招唯一专属内推码EYTUC】
删库不必跑路!详解 MySQL 数据恢复
【烹饪记录】--- 青椒炒千张
ACM Multimedia 2022 | 视觉语言预训练模型中社会偏见的反事实衡量和消除
How to transfer to software testing, one of the high paying jobs in the Internet? (software testing learning roadmap attached)
Why should garment enterprises talk about informatization?
Huawei Nova 10 series released Huawei application market to build a solid application security firewall
HUAWEI nova 10系列发布 华为应用市场筑牢应用安全防火墙