特点

·轻量级实现:核心仅由一个 .c 文件和两个头文件组成

· 无依赖:不依赖标准库以外的组件,适合裸机环境

· 丰富断言:支持整数、浮点、字符串、数组、位操作等多种断言

· 跨平台:兼容 GCC、IAR、Clang、Green Hills、Microchip 等嵌入式编译器 

· 易集成:可与 Makefile、CMake、PlatformIO 等构建系统配合使用

资源占用

· 内存占用:极低,仅几 KB(取决于编译器优化和使用的断言数量)

· 代码体积:核心代码 < 20KB,适合 8-bit MCU

示例断言

下面是一步步的详细指南,适合初学者:

第一步:准备环境

确保你已经在 WSL 中安装了以下工具:

sudo apt update

sudo apt install build -essential git

第二步:下载 Unity 框架

Unity 是由ThrowTheSwitch.org 提供的开源项目,你可以通过 Git 克隆它:

git clone https://github.com/ThrowTheSwitch/Unity.git

你也可以只复制 src/unity.c 和 src/unity.h 到你的项目中,Unity 的核心就是这两个文件。

第三步:创建你的测试项目结构

推荐的项目结构如下:

  my_project/

  ├── src/              # 你的源代码

  │   └── calculator.c

  ├── test/             # 测试代码

  │   └── test_calculator.c

  ├── unity/            # Unity 框架代码

  │   └── unity.c, unity.h

  └── Makefile          # 构建脚本

第四步:编写测试代码

示例 test /test_calculator.c:

  c

#include

 "unity.h"

#include

 "calculator.h"

   

  void setUp(void) {}    // 每个测试前调用

  void tearDown(void) {} // 每个测试后调用

   

  void test_Addition(void) {

      TEST_ASSERT_EQUAL_INT(5, add(2, 3));

  }

   

  void test_Subtraction(void) {

      TEST_ASSERT_EQUAL_INT(1, subtract(3, 2));

  }

   

  int main(void) {

      UNITY_BEGIN();

      RUN_TEST(test_Addition);

      RUN_TEST(test_Subtraction);

      return UNITY_END();

  }

第五步:编写 Makefile

示例 Makefile:​​​​​​​

  makefile

  CC = gcc

  CFLAGS = -Iunity -Isrc -Itest

   

  SRC = src/calculator.c

  TEST = test/test_calculator.c

  UNITY = unity/unity.c

   

  TARGET = test_runner

   

  all:

      $(CC) $(CFLAGS) $(SRC) $(TEST) $(UNITY) -o $(TARGET)

      ./$(TARGET)

   

  clean:

      rm -f $(TARGET)

第六步:运行测试

在项目根目录下运行:

  make

  你将看到类似输出:

  test/test_calculator.c:10:test_Addition:PASS

  test/test_calculator.c:14:test_Subtraction:PASS

  -----------------------

  2 Tests 0 Failures 0 Ignored

  OK

准备好开始真正的自动化测试项目实战了吗?

最后: 下方这份完整的软件测试 视频教程已经整理上传完成,需要的朋友们可以自行领取【保证100%免费】

​​​件测试面试文档

我们学习必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有字节大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。

在这里插入图片描述

在这里插入图片描述

更多推荐