Iphone 单元测试:使用 SQL

Posted

技术标签:

【中文标题】Iphone 单元测试:使用 SQL【英文标题】:Iphone Unit Test : with SQL 【发布时间】:2009-07-27 15:12:04 【问题描述】:

我正在尝试对包含由 FMDB 包装的 SQL 调用的方法进行一些单元测试。当我尝试构建这些项目时,我得到了很多链接器错误:

  "_sqlite3_step", referenced from:
      -[FMResultSet next] in FMResultSet.o
      -[FMDatabase executeUpdate:arguments:] in FMDatabase.o
  "_sqlite3_column_name", referenced from:
      -[FMResultSet setupColumnNames] in FMResultSet.o
      -[FMResultSet kvcMagic:] in FMResultSet.o

(其中有 27 个,所以我不会全部粘贴;)

当我的项目是我的活动目标时一切正常,但是当我将目标设置为单元测试包并将所有 .m 文件添加到目标时,我会收到这些错误。

有人知道问题出在哪里吗?

提前致谢, 文森特。

【问题讨论】:

【参考方案1】:

您的单元测试目标需要包含 sqlite3.c。

这应该可以解决它。

【讨论】:

是的,这确实是问题所在!我是 Xcode 的新手,我刚刚开始了解目标和依赖项是如何工作的。非常感谢!

以上是关于Iphone 单元测试:使用 SQL的主要内容,如果未能解决你的问题,请参考以下文章

iPhone Nibs 如何使用逻辑测试进行单元测试?

iPhone 验收/单元测试

iPhone单元测试中的NSHomeDirectory

无法在 iphone 单元测试中从 NSBundle 加载文件

我可以为外部服务 (iPhone) 构建单元测试吗?

为 iPhone / iPad 编写单元测试的最佳方法是啥?