繁体   English   中英

如何在Windows CE环境中使用UnitTest ++?

[英]How to use UnitTest++ on Windows CE Environment?

UnitTest ++库直接声明:“支持以下平台:

Win32
Linux
Mac OS X"

但是,有人在Win CE环境中尝试过吗?

我收到与Win API相关的各种编译器错误。 例如

布尔GetProcessAffinityMask(处理hProcess,PDWORD_PTR lpProcessAffinityMask,PDWORD_PTR lpSystemAffinityMask);

DWORD_PTR SetThreadAffinityMask(处理hThread,DWORD_PTR dwThreadAffinityMask);

等等

因此,您尝试使用Windows CE环境编译UnitTest ++吗?

Windows CE与Win32不同。 它仅支持Windows桌面API的一部分。 因此,UnitTest ++支持Win32的声明并不意味着它支持Windows CE。 由于您提到的两个API函数仅在Window XP桌面API(请参见MSDN)上可用,因此UnitTest ++的编译会失败。

因此,您可能有一些选择:
-修改UnitTest ++以支持Windows CE(可能无法)
-使用另一个明确支持Windows CE的单元测试框架
-编译适用于Windows桌面的UnitTest ++并在其中运行UnitTest

希望对您有所帮助。

UnitTest ++中使用的所有(或大多数)Win32 API与计时器有关,如果我们使用预处理程序指令(对于Win CE Environment)忽略这些API,则会成功编译该API。

现在,在执行测试时,我们遇到了另一个问题,即printf函数无法在WinCE终端上提供输出。 因此,我们用OutputDebugString()替换了所有printf函数,并能够执行测试并在终端上查看结果,例如PuTTY。 但是,定时测试将不再起作用,这现在不是我们的要求。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM