需求起因

  我从事测试工作,每天任务简单枯燥,根据开发完成的需求去写测试用例,验证开发完成的需求是否与原始需求描述一致。我们之前使用的测试模板分为2类

  • 使用公共用例去测试需求,我本地只需要更改arxml配置文件即可。
  • 调用开发提供的API用例去写测试用例
    但是目前有一个问题,对于调用开发API去写测试用例,我们CMAKE框架上是没有提供从其他文件目录导入头文件这么一个需求的。
    下面描述一下我们用例结构
 ── case_name
    ├── dds_app
    │   ├── common
    │   │   └── common.hpp
    │   ├── publisher
    │   │   └── publisher.cpp
    │   └── waitset_subscriber
    │       └── waitset_subscriber.cpp
    └── test_case_name.py

publisher和subscriber需要的功能函数直接从common.hpp中调用。
由于最近新增了一个subscriber运行绑核的需求,对于API用例需要添加大量代码(每个用例都需要添加大量相同代码),我负责的接口人就希望尽量只调用一下头文件,头文件的位置则放在一个公共路径,这样就不用再每一个用例common目录下在建立一个bind_cup.hpp文件了。

采用公共的文件结构应该如下, 绑核头文件放在dds_common目录下, 文件命名为dds_bind_cpu.hpp

├── case_name
│   ├── dds_app
│   │   ├── common
│   │   │   └── common.hpp
│   │   ├── publisher
│   │   │   └── publisher.cpp
│   │   └── waitset_subscriber
│   │       └── waitset_subscriber.cpp
│   └── test_case_name.py
└── dds_common
    └── dds_bind_cpu.hpp

问题:
在case_name/dds_app/waitset_subscriber/waitset_subscriber.cpp中如何才能成功引用dds_common/dds_bind_cpu.hpp呢?

gcc提供了一个 "-I" 参数,对于自定义头文件加载都会到该目录下查找。

gcc -I ${dds_common_absoulte_path} waitset_subscriber -o waitset_subscriber.cpp

subscriber中调用自定义头文件

 #include "dds_bind_cpu.hpp"
posted on 2022-05-28 22:47  南山砺  阅读(746)  评论(0)    收藏  举报