惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Microsoft Azure Blog
Microsoft Azure Blog
Google Online Security Blog
Google Online Security Blog
D
Darknet – Hacking Tools, Hacker News & Cyber Security
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
Simon Willison's Weblog
Simon Willison's Weblog
T
Threat Research - Cisco Blogs
C
CXSECURITY Database RSS Feed - CXSecurity.com
L
Lohrmann on Cybersecurity
www.infosecurity-magazine.com
www.infosecurity-magazine.com
Forbes - Security
Forbes - Security
P
Palo Alto Networks Blog
Schneier on Security
Schneier on Security
S
Schneier on Security
T
Tor Project blog
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
WordPress大学
WordPress大学
The Hacker News
The Hacker News
Hacker News - Newest:
Hacker News - Newest: "LLM"
罗磊的独立博客
Application and Cybersecurity Blog
Application and Cybersecurity Blog
F
Fortinet All Blogs
博客园 - 三生石上(FineUI控件)
小众软件
小众软件
C
Check Point Blog
Stack Overflow Blog
Stack Overflow Blog
Blog — PlanetScale
Blog — PlanetScale
雷峰网
雷峰网
S
Security @ Cisco Blogs
PCI Perspectives
PCI Perspectives
Spread Privacy
Spread Privacy
W
WeLiveSecurity
SecWiki News
SecWiki News
A
About on SuperTechFans
H
Help Net Security
博客园 - 司徒正美
Recent Commits to openclaw:main
Recent Commits to openclaw:main
爱范儿
爱范儿
S
Securelist
M
MIT News - Artificial intelligence
云风的 BLOG
云风的 BLOG
月光博客
月光博客
Jina AI
Jina AI
博客园 - 叶小钗
Vercel News
Vercel News
阮一峰的网络日志
阮一峰的网络日志
Recent Announcements
Recent Announcements
S
Secure Thoughts
The Cloudflare Blog
美团技术团队
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More

风里有花香

吉利银河翼真L380 【动态测试_Flash】 【动态测试_DIO】 【曲轴信号】 【动态测试_ADC】 【动态测试_软件安装】 [岚图梦想家座椅] 【读书_了凡四训】 【CAN错误帧分析】 【小鹏X9座椅破解_完结撒花】 【小鹏X9座椅破解_解决思路】 【这是拍到了谁家后花园!!!】 【遥控魔鬼鱼拆解】 【MATLAB R2024b超详细图polyspace激活安装】 【我们的语言来自何处】 【IDE编译器的使用笔记】 [Halo的Hao主题好用的注入代码] 【Automotive SPICE 培训笔记】 【拆解小米mix2s】
【动态测试_软件操作_语句覆盖100%】
标签 · 2025-09-05 · via 风里有花香

文档主要针对语句覆盖进行软件说明

学习记录:

1.同一份代码可以创建不同的project

2.创建project时要包含头文件

3.宏定义:CODESCROLL=1

4.打桩:打桩设置返回值后所有的用例默认都是一个返回值,所以要新建一个test,执行新test的自带用例达到取反效果

想要在一个test下执行全部分支,可以用

if (CS_TESTCASENO()==1)

return 100;

else

return 20;

int * temp = CS_INT_INPUT(int, "ret");

*((int *)arg0) = &temp;

5.创建单元测试时编译不过去,提示:'""' 不是内部或外部命令,也不是可运行的程序

或批处理文件。

解决办法:重新建一个hightec的hightool

实际操纵过程中没有重建,修改toolchain中已有的4.9.3

1.Env Script 选择C:\HIGHTEC\ide\htc-ide-v2.1.2\plugins\org.apache.ant_1.10.1.v20170504-0840\bin\antRun.bat

2.C标签页下的Compiler和Linker选择C:\HIGHTEC\toolchains\tricore\v4.9.3.0\bin\tricore-gcc.exe

3.C标签页下的Archiver选择C:\HIGHTEC\toolchains\tricore\v4.9.3.0\bin\tricore-ar.exe

4.C++标签页下的Compiler和Linker选择C:\HIGHTEC\toolchains\tricore\v4.9.3.0\bin\tricore-g++.exe

5.C++标签页下的Archiver选择C:\HIGHTEC\toolchains\tricore\v4.9.3.0\bin\tricore-ar.exe

新建工程

选择C文件

起名字和选择工具链

选要测的C文件

增加H文件包含


增加宏定义CODESCROLL=1

增加测试用例

增加C文件里的函数

例1、输入参数测试_inputVarTest

这个函数一共4条语句,软件自动生成了1个测试用例包含17case 覆盖了24、27行,现在需要增加两条case把19、21行的语句覆盖也覆盖上。

添加测试用例

看着代码逻辑设计输入输出值,保证程序能跑到想跑的代码

视图选项记得选语句覆盖~,第一个例子语句覆盖就到100%!!!!

例2、静态变量测试_staticVarTest

添加一个测试函数,并运行。软件没有自动生成用例,需要到test info中手动添加静态变量。

手动添加静态变量

添加4个case,a=0,1,3,4语句覆盖100% 又是小进步!!!

例3、数组变量测试_arrayTest1

增加数组测试函数

发现数组只有成员0,其他成员需要添加

例4、条件覆盖和判定覆盖的覆盖测试_mcdcTest

就是把if判断里的所有可能性跑到了,(a == 10 && b < 30 && c > 50)有4种有效的可能性

第一个不满足的时候,后面就不关心了

case全删除,重新写4个case

case1满足全对
case2满足C2错

case3满足C1错

case4满足C0错

语句覆盖100%只需要前2个case,条件覆盖需要4个~~~

例5、桩函数返回值测试_undefinedStubTest

加入打桩测试函数

自动生成的桩函数不能覆盖115行,现在需要手动往case里添加桩函数返回值最后我能够控制返回什么

增加桩,同时加测试代码

return CS_INT_INPUT(int, "ret");/*返回输入ret变量的值*/

这样可以控制函数返回什么数了

例6、空指针参数测试_VoidPtrParmTest

增加函数

增加桩函数测试代码,把输入的值传到指针参数。

int * temp = CS_INT_INPUT(int, "ret1");

((int )arg0) = &temp;

本文是原创文章,采用 CC BY-NC-SA 4.0 协议,完整转载请注明来自 Allen的小破站