NLecho 发表于 2015-1-19 16:43:49

c++test 在IAR项目上的应用

用c++test在iar平台下做单元测试,运行单元测试是总是出错,控制台提示如下:
Executing...
cspybat "D:\Program Files (x86)\IAR Systems\Embedded Workbench 6.0\arm\bin\armproc.dll" "D:\Program Files (x86)\IAR Systems\Embedded Workbench 6.0\arm\bin\armsim2.dll" "F:\parasoft TESTITEM\SB80\.cpptest\BS80\unit-data\current_tubf179707/BS80Test.out" --plugin "D:\Program Files (x86)\IAR Systems\Embedded Workbench 6.0\arm\bin\armbat.dll"--backend -B --endian=little --cpu=Cortex-M3 --fpu=None --semihosting -d sim

   IAR C-SPY Command Line Utility V6.3.0.0
   Copyright 2000-2011 IAR Systems AB.

...完成。
测试日志读取中...
找不到测试日志文件。: F:\parasoft TESTITEM\SB80\.cpptest\BS80\unit-data\current_tubf179707\cpptest_results.tlog
请确保:
1. 测试可执行文件 "F:\parasoft TESTITEM\SB80\.cpptest\BS80\unit-data\current_tubf179707\BS80Test.out" 正常构建并运行
2. 当运行测试时所有的依赖 DLL 在 PATH 环境变量中都可用
...失败。

对 /BS80 的 "Run IAR EW Tests user" (执行)由于错误而结束。检查上述日志详情。
临时覆盖率数据清除中...
...完成。

maoyanhuabihai 发表于 2015-5-22 11:30:23

你试试下面的解决方法,我在VS2010里用QT编译时出现过相同的提示,解决方法如下:
因在执行过程中提示“找不到测试日志文件E:\Unit Testing\1300 Test\.cpptest\
Acurev1300\unit-data\current_tubf179707\cpptest_results.tlog”,根据提示“请确保测试可执行文件“E:\Unit Testing\1300 Test\.cpptest\
Acurev1300\unit-data\current_tubf179707\Acurev1300Test.exe”正确构建并运行”,
第一步,在current_tubf179707目录下找到Acurev1300Test.exe应用程序并运行,可是运行时弹出错误提示“无法找到QtGuid4.dll…”、“无法找到QtCored4.dll…”,
解决方法是将Qt安装目录下bin中的QtGuid4.dll、QtCored4.dll拷贝到current_tubf179707目录下,
第二步,Acurev1300Test.exe应用程序,提示“无法找到cpptestruntime.dll…”,
解决方法是将C++test安装目录下\engine\bin中的cpptestruntime.dll拷贝
到current_tubf179707目录下,
第三部,再次运行Acurev1300Test.exe,此时无错误提示,可以正常运行。可以产生正确的cpptest_results.tlog、cpptest_results.clog日志文件。

maoyanhuabihai 发表于 2015-5-22 11:34:45

另外,请教一下,您是怎么让IAR编译过的工程在C++ Test里运行的,你的C++ test是作为VS2010的插件吗?我的C++ test是作为VS2010的插件,所以IAR编译过的工程需要在VS2010里再编译,可是总编译不通过,你是怎么做的。

maoyanhuabihai 发表于 2015-5-22 11:38:56

你的问题的解决方法:
解决方法:
因在执行过程中提示“找不到测试日志文件E:\Unit Testing\1300 Test\.cpptest\
Acurev1300\unit-data\current_tubf179707\cpptest_results.tlog”,根据提示“请确保测试可执行文件“E:\Unit Testing\1300 Test\.cpptest\
Acurev1300\unit-data\current_tubf179707\Acurev1300Test.exe”正确构建并运行”,
第一步,在current_tubf179707目录下找到Acurev1300Test.exe应用程序并运行,可是运行时弹出错误提示“无法找到QtGuid4.dll…”、“无法找到QtCored4.dll…”,
解决方法是将Qt安装目录下bin中的QtGuid4.dll、QtCored4.dll拷贝到current_tubf179707目录下,
第二步,Acurev1300Test.exe应用程序,提示“无法找到cpptestruntime.dll…”,
解决方法是将C++test安装目录下\engine\bin中的cpptestruntime.dll拷贝
到current_tubf179707目录下,
第三部,再次运行Acurev1300Test.exe,此时无错误提示,可以正常运行。可以产生正确的cpptest_results.tlog、cpptest_results.clog日志文件。

maoyanhuabihai 发表于 2015-5-22 13:36:19

因在执行过程中提示“找不到测试日志文件E:\Unit Testing\1300 Test\.cpptest\
Acurev1300\unit-data\current_tubf179707\cpptest_results.tlog”,根据提示“请确保测试可执行文件“E:\Unit Testing\1300 Test\.cpptest\
Acurev1300\unit-data\current_tubf179707\Acurev1300Test.exe”正确构建并运行”,
第一步,在current_tubf179707目录下找到Acurev1300Test.exe应用程序并运行,可是运行时弹出错误提示“无法找到QtGuid4.dll…”、“无法找到QtCored4.dll…”,
我在VS2010中用集成的QT编译时,遇到过你提到的提示信息,解决方法如下:
解决方法是将Qt安装目录下bin中的QtGuid4.dll、QtCored4.dll拷贝到current_tubf179707目录下,
第二步,Acurev1300Test.exe应用程序,提示“无法找到cpptestruntime.dll…”,
解决方法是将C++test安装目录下\engine\bin中的cpptestruntime.dll拷贝
到current_tubf179707目录下,
第三部,再次运行Acurev1300Test.exe,此时无错误提示,可以正常运行。可以产生正确的cpptest_results.tlog、cpptest_results.clog日志文件。
页: [1]
查看完整版本: c++test 在IAR项目上的应用