单元集成测试时间敏感的C代码

单元集成测试时间敏感的C代码,第1张

概述有没有办法创建单元/集成测试,不仅测试正确性,还测试步骤是否在特定时间段内完成? 例如: // MyTestSuite.h#include <cxxtest/TestSuite.h>class MyTestSuite : public CxxTest::TestSuite{ public: void testTimeCriticalFunction(void) { 有没有办法创建单元/集成测试,不仅测试正确性,还测试步骤是否在特定时间段内完成?

例如:

// MyTestSuite.h#include <cxxtest/TestSuite.h>class MyTestSuite : public cxxtest::TestSuite{    public:    voID testTimeCriticalFunction(voID)    {        TS_ASSERT_EQUALS(timeCriticalFunction(),correctValue);        // timeCriticalFunction() must correctly return within 5 milliseconds        TS_ASSERT_DID_COMPLETE_WITHIN_MILliSECONDS(timeCriticalFunction(),5);    }}

虽然该示例只是一个函数,但如果有一种方法将它们链接在一起以对较长的序列执行集成测试,那么如果每个步骤在指定的时间内完成并且在指定的时间内完成,则测试将返回true,这将是理想的.整个小组.

亚毫秒精度是首选,但典型的时间要求在5-15毫秒之间.

更新1:目标平台是UNIX(Mac OS X).精确的时序要求是由问题域(通信)引起的.

更新2:鉴于评论,假设我专注于集成测试.

解决方法 通常,以较小的粒度放置特定的时序要求并不是一个好主意.由于您使用的是OSX,因此您最多只能拥有一个软实时系统. (如果您有严格的实时要求,OSX等通用 *** 作系统不是答案.)可用的cpu / cpu内核数量有限.即使您的进程/进程组作为具有非常高优先级的超级用户运行, *** 作系统也可以在某种程度上随意决定让您的线程进入休眠状态. 总结

以上是内存溢出为你收集整理的单元/集成测试时间敏感的C代码全部内容,希望文章能够帮你解决单元/集成测试时间敏感的C代码所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1225614.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-05
下一篇 2022-06-05

发表评论

登录后才能评论

评论列表(0条)

保存