当前位置:网站首页>Save: software analysis, verification and test platform
Save: software analysis, verification and test platform
2022-06-23 19:26:00 【InfoQ】
- Provide a unified testing and verification framework , It is convenient to verify the functions of software analysis tools locally ;
- Provide a unified platform , Users can compare the effectiveness of different software analysis tools according to the common test suites that have been integrated or by uploading test suites themselves , Or evaluate its scope of application ;
- Provides REST API, Test verification can be integrated into the development process of software analysis tools ( Such as CI/CD).
One . motivation
- Lit By some Python Script composition , It is difficult to implement at any time without installation ;
- Lit It was designed for the compiler , And the extensibility of application logic is not considered ;
- Lit Created by community system developers , It's just a simple one CLI Tools , There is no ecosystem
- Pass the source code in the form of string to the analysis tool ;
- The analysis tool executes the internal analysis logic in the form of a black box ;
- Analysis tool output : The middle of the code indicates as AST、 Static check alarm 、 Fixed code 、 Code execution results, etc . All output data can be represented in string form .

Two . SAVE-cli
2.1 Command line application

2.2 The plugin is introduced

2.3 Resource detection mechanism
| A
| save.toml
| B
| save.toml| A
| save.toml
| B <<< test suite
| myTest.java <<< test resource
| save.toml3、 ... and . SAVE-cloud
3.1 What's new ?
- Unified testing framework ;
- cloud CI Platform to perform test tasks ;
- Visual Kanban of test results ;
- Store historical test results ;
- Support regression testing ;
- Can be used to validate or compare analysis tools Benchmark aggregate
3.2 SAVE-cloud Workflow
- Users can use SAVE-cloud Provided REST API perhaps WEB Interface ;
- Users can select existing benchmark Or upload your own benchmark;
- Trigger processing flow , Start a docker Containers , call SAVE-cli To perform tests ;
- Store all historical execution results in the database , Easy to analyze

3.3 SAVE-cloud How to use it? ?





3.4 SAVE API
Four . summary
reference :
- LLVM Lit: https://llvm.org/docs/CommandGuide/lit.html
- NIST Juliet Test Suites: https://samate.nist.gov/SARD/test-suites
- SAVE-cli: https://github.com/saveourtool/save-cli
- SAVE-cloud: https://github.com/saveourtool/save-cloud
- SAVE fix plugin: https://github.com/saveourtool/save-cli/blob/main/save-plugins/fix-plugin/README.md
- Diff library: https://github.com/petertrr/kotlin-multiplatform-diff
- SAVE warn plugin: https://github.com/saveourtool/save-cli/blob/main/save-plugins/warn-plugin/README.md
- SAVE API:https://github.com/saveourtool/save-cloud/blob/master/save-backend/Backend-API.md
边栏推荐
- Advanced network accounting notes (VIII)
- 博睿数据出席阿里云可观测技术峰会,数字体验管理驱动可持续发展
- 物流服务与管理主要学什么
- CV image classification
- 又一家破产清算:那些在时代和资本裹挟下风雨飘摇的游戏公司
- Jerry's broadcast MP3 prompt sound function [chapter]
- Matrix analysis notes (II)
- Are there conditions for making new bonds? Is it safe to make new bonds
- [one by one series] identityserver4 (IV) authorization code process
- 游戏资产复用:更快找到所需游戏资产的新方法
猜你喜欢

How to use the low code platform of the Internet of things for process management?

又一家破产清算:那些在时代和资本裹挟下风雨飘摇的游戏公司

直播分享| 腾讯云 MongoDB 智能诊断及性能优化实践

Convex optimization notes

好用的人事管理软件有哪些?人事管理系统软件排名!
![Une fois que le port série de Jerry est réglé, le Code aléatoire est imprimé, et le cristal interne n'est pas étalonné [chapitre]](/img/6d/96b3326a201bf17d436c1af7834232.png)
Une fois que le port série de Jerry est réglé, le Code aléatoire est imprimé, et le cristal interne n'est pas étalonné [chapitre]

直播回顾 | 云原生混部系统 Koordinator 架构详解(附完整PPT)

Naacl 2022 finds | byte proposes MTG: multilingual text generation data set

20set introduction and API

Nanxin semiconductor rushes to the scientific innovation board: its annual revenue is RMB 980 million. Sequoia Xiaomi oppo is the shareholder
随机推荐
在线文本实体抽取能力,助力应用解析海量文本数据
傑理之串口設置好以後打印亂碼,內部晶振沒有校准【篇】
Take out Jianghu will change, and meituan "big brother" is hard to be
User analysis aarrr model (pirate model)
【NOI2014】15.起床困难综合症【二进制】
A review of comparative learning
Netcf summary
不止雷军 iQOO产品经理也称赞高通骁龙8+:焕然一新
qgis导入WMS OR WMTS
Naacl 2022 finds | byte proposes MTG: multilingual text generation data set
【One by One系列】IdentityServer4(八)使用EntityFramework Core对数据进行持久化
How to use the low code platform of the Internet of things for process management?
Approximate fair queuing on programmable switches reading notes
Advanced network accounting notes (V)
Convex optimization notes
活动报名 | MongoDB 5.0 时序存储特性介绍
【One by One系列】IdentityServer4(七)授权码流程原理之MVC
golang set type implementation
[comparative learning] koa JS, gin and asp Net core - Middleware
Obtain equipment information