2024 年 10 月 26 日? Ceedling 1.0.0很快就会发布。预发行版本现已推出。请参阅全新的自述文件,了解 Ceedling 的重新介绍以及各种补充资源的链接。请参阅发行说明,了解 0.31.1 以来所有新增内容的概述以及详细变更日志和重大变更列表的链接。
Ceedling 是一个 C 项目的构建系统,它是 Ruby 的 Rake(make-ish)构建系统的扩展。 Ceedling 还通过集成 CMock、Unity 和 CException,使 C 语言中的 TDD(测试驱动开发)变得轻而易举——如果您要使用 C 语言创造出色的内容,那么这三个项目是您离不开的。 Ceedling 还可以通过方便的插件机制进行扩展。
文档和许可证信息存在于 docs/ 的存储库中
首先确保您的系统上已安装 Ruby(如果尚未安装)。然后,从命令提示符处:
> gem install ceedling
> git clone --recursive https://github.com/throwtheswitch/ceedling.git
> cd ceedling
> bundle install # Ensures you have all RubyGems needed
> git submodule update --init --recursive # Updates all submodules
> bundle exec rake # Run all Ceedling library tests
如果您的系统上未安装捆绑程序或者遇到问题,您可能必须安装它:
> sudo gem install bundler
如果您在运行捆绑器时遇到问题并收到类似can't find gem bundler (>= 0.a) with executable bundle (Gem::GemNotFoundException)
消息,您可能需要安装不同版本的捆绑器。为此,请参考 Gemfile.lock 中的版本。基于当前Gemfile.lock的示例如下:
> sudo gem install bundler -v 1.16.2
使用 Ceedling 创建项目非常简单。只需告诉 ceedling 项目的名称,它将创建一个名为该名称的子目录,并用默认的目录结构和配置填充它。
ceedling new YourNewProjectName
您可以将文件添加到 src 和 test 目录中,它们将立即成为测试构建的一部分。需要不同的结构吗?您可以根据新路径或工具要求立即开始调整project.yml
文件。
您可以随时升级到最新版本的 Ceedling,自动获得对其附带的打包 Unity 和 CMock 的访问权限。
gem update ceedling
您刚刚开始使用 Ceedling 吗?也许您希望您的项目安装时附带一些方便的文档?没问题!您可以在创建新项目时执行此操作。
ceedling new --docs MyAwesomeProject
Ceedling 也可以将其全部精力投入到该项目中。这使得它的使用无需担心外部依赖。您不必担心 Ceedling 会因为更新了 gem 而对该特定项目进行更改...无需担心 Unity 或 CMock 中的更改会破坏您未来的构建。如果您想以这种方式使用 Ceedling,请在创建项目时告诉它您需要本地副本:
ceedling new --local YourNewProjectName
这会将所有 Unity、CMock 和 Ceedling 安装到项目YourNewProjectName
内名为vendor
新文件夹中。它仍然会为您创建带有src
和test
文件夹的简单目录结构。
分数!
如果您想强制本地安装的 Ceedling 版本升级以稍后匹配您最新的 gem,这很简单!只需发出以下命令:
ceedling upgrade --local YourNewProjectName
就像new
命令一样,它是从项目的父目录调用的。
发生这种情况时,您是否担心会丢失所有本地更改?您可以通过发出no_configs
来阻止 Ceedling 更新项目文件。
ceedling upgrade --local --no_configs TheProject
你在使用 Git 吗?您可能希望通过在new
调用中添加--gitignore
来自动让 Ceedling 创建一个gitignore
文件。
测试愉快!