Robot Framework抱怨SWIG生成的python文件不包含任何关键字

时间:2012-11-28 11:03:37

标签: swig robotframework

我正在使用SWIG从C ++ for Robot Framework生成包装器作为测试库。 RF会发出警告,因为它不包含任何关键字。

受测试的系统是由VS向导创建的Win32 DLL LibLogin2。它默认导出该函数:

LIBLOGIN2_API int fnLibLogin2(void);

// This is an example of an exported function.
LIBLOGIN2_API int fnLibLogin2(void)
{
    return 42;
}

我将接口文件添加到项目中:

/* LibLogin2.i */
 %module LibLogin2
 %{
  extern int fnLibLogin2(void);
 %}

 extern int fnLibLogin2(void);

LibLogin2.py,LibLogin2_warp.cxx,_LibLogin2.pyd使用Release | x64成功构建。

我有一个RF测试案例如下:

*** Settings ***
Library LibLogin2.py


*** Test Case ***
Trivial
    ${value} =  fnLibLogin2
    Should Be Equal ${value}    ${42}

我启动Robot Framework并获得错误:

  

pybot LoginTests.tsv   [WARN]导入的库'LibLogin2.py'不包含关键字

我可以通过注释掉LibLogin.py的最后一行来解决这个问题:

def fnLibLogin2():
  return _LibLogin2.fnLibLogin2()
#fnLibLogin2 = _LibLogin2.fnLibLogin2

每次必须注释掉每个关键词时,这很烦人。

请指教!

这是我的配置:

Windows 8 64位 Visual Studio 2012 Python 2.6.6 机器人框架2.7.5 swigwin-2.0.8

0 个答案:

没有答案