# travodds-autotest **Repository Path**: agiros-dds/travodds-autotest ## Basic Information - **Project Name**: travodds-autotest - **Description**: travodds自动化测试工具 - **Primary Language**: Unknown - **License**: MulanPSL-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 2 - **Created**: 2025-05-28 - **Last Updated**: 2026-01-05 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 1 TRAVODDS-AUTOTEST ## 1.1 项目简介 travodds自动化接口测试用例集合 ## 1.2 文件结构 ``` ┌── README.md # 项目说明文档 ├── CMakeLists.txt # cmake构建配置文件 ├── LICENSE # 许可证 ├── doc/ # 项目文档 ├── resources/ # 测试资源文件 ├── travodds_c/ # C接口测试项目 ├── travodds_cpp/ # C++接口测试项目 ├── travodds_java/ # Java接口测试项目 ├── travodds_python/ # Python接口测试项目 └── travodds_rust/ # Rust接口测试项目 ``` ## 1.3 构建命令 ```bash # 创建构建目录 mkdir build && cd build # 构建 # 接口测试依赖travodds、travodds-c、traovdds-cpp、travodds-java、travodds-python、travodds-rust库 # 非标准安装路径需要通过-DCMAKE_PREFIX_PATH="path"指定到依赖库的cmake配置 # 例如-DCMAKE_PREFIX_PATH="/path/to/travodds/cmake;/path/to/travodds-c/cmake" cmake .. # 生成 cmake --build . # 安装 # 自定义安装目录需要在构建时传入-DCMAKE_INSTALL_PREFIX="/install/prefix/path"设置安装目录前缀 cmake --install . ``` ## 1.4 使用方法 1. **安装依赖**。接口测试项目依赖travodds、travodds-c、traovdds-cpp、travodds-java、travodds-python、travodds-rust库。 2. **通过cmake构建工程**。cmake可自动识别当前平台对应的生成器,如"Unix Makefiles"、"Visual Studio 16 2019"等。 3. **生成可执行程序**。生成每个测试子项目的程序、依赖和环境。 4. **安装到统一目录**。执行cmake的安装任务,会将各个子项目整理安装到目标位置。 5. **执行测试**。进入安装目录,分别运行每个测试子项目的测试用例。 ## 1.5 注意事项 1. 在travodds-autotest目录执行上述构建命令,会将所有测试子项目全部安装到目标位置,后续进入安装位置分别进行测试即可,无需再单独构建下面的子项目。 2. 其中travodds_c和travodds_cpp需要同时启动两个终端分别执行**run_test_positive_cmd.sh**和**run_test_negative_cmd.sh**,一个是主测端,负责主要的测试逻辑,一个是辅测端负责一些作为对端配合的测试用例。 3. travodds_java、travodds_python和travodds_rust,都是先执行构建或者依赖检查,再使用**run_test.sh**脚本运行测试用例。 # 2 TRAVODDS_C ## 2.1 项目简介 travodds的C接口测试用例集合 ## 2.2 文件结构 ``` ┌── CMakeLists.txt # cmake构建配置文件 ├── src/ # 测试源文件目录 ├── include/ # 测试头文件目录 ├── types/ # 数据类型目录 └── scripts/ # 测试脚本目录 ``` ## 2.3 构建命令 ```bash # 创建构建目录 mkdir build && cd build # 构建 # C接口测试依赖travodds、travodds-c库,非标准安装路径需要通过-DCMAKE_PREFIX_PATH="path"指定到依赖库的cmake配置。 # 例如-DCMAKE_PREFIX_PATH="/path/to/travodds/cmake;/path/to/travodds-c/cmake" cmake .. # 生成 cmake --build . # 安装 # 自定义安装目录需要在构建时传入-DCMAKE_INSTALL_PREFIX="/install/prefix/path"设置安装目录前缀 cmake --install . ``` ## 2.4 使用方法 1. **安装依赖**。travodds_c接口测试项目依赖travoods、travodds-c库。 2. **通过cmake构建工程**。cmake可自动识别当前平台对应的生成器,如"Unix Makefiles"、"Visual Studio 16 2019"等。 3. **生成可执行程序**。可以在命令行生成,也可以用IDE打开点击生成。 4. **查看生成结果**。包括主测端程序TestPositive和辅测端程序TestNegative。 5. **运行**。将主目录下script文件夹中的脚本拷贝至可执行程序所在目录,运行。 6. **查看测试结果**。在test_result.txt文件和test_result_negative.txt文件中,当然也可以自己修改脚本来自定义输出文件。 ## 2.5 注意事项 1. travodds的C接口测试依赖travodds核心库、travodds-c库、googletest测试框架、travoddsgen工具、cmake等。 2. 依赖googletest测试框架,需要链接其gtest库,在项目根目录resources/googletest是此框架的源码Release 1.12.0版本。 3. 当前项目构建过程中会自动调用上层目录resource/googletest中的cmake,作为子项目进行构建生成。 5. 在C接口测试项目中提供了types文件夹,是测试过程中依赖的数据类型,包含两种数据类型idl文件。 6. 当前提供的类型支持文件由travoddsgen工具生成,如果travoddsgen工具发生了更新,或者travodds核心库的更新,都会直接影响到支持文件的可用性。因此,建议用户自行使用travoddsgen工具生成最新的支持文件,可有效防止构建编译时出错。 # 3 TRAVODDS_CPP ## 3.1 项目简介 travodds的C++接口测试用例集合 ## 3.2 文件结构 ``` ┌── CMakeLists.txt # cmake构建配置文件 ├── src/ # 测试源文件目录 ├── include/ # 测试头文件目录 ├── types/ # 数据类型目录 └── scripts/ # 测试脚本目录 ``` ## 3.3 构建命令 ```bash # 创建构建目录 mkdir build && cd build # 构建 # C++接口测试仅依赖travodds库,非标准安装路径需要通过-DCMAKE_PREFIX_PATH="path"指定到依赖库的cmake配置路径。 # 例如-DCMAKE_PREFIX_PATH="/path/to/travodds/cmake" cmake .. # 生成 cmake --build . # 安装 # 自定义安装目录需要在构建时传入-DCMAKE_INSTALL_PREFIX="/install/prefix/path"设置安装目录前缀 cmake --install . ``` ## 3.4 使用方法 1. **安装依赖**。travodds-cpp接口测试项目依赖travoods库。 2. **通过cmake构建工程**。cmake可自动识别当前平台对应的生成器,如"Unix Makefiles"、"Visual Studio 16 2019"等。 3. **生成可执行程序**。可以在命令行生成,也可以用IDE打开点击生成。 4. **查看生成结果**。包括主测端程序TestPositive和辅测端程序TestNegative。 5. **运行**。将主目录下script文件夹中的脚本拷贝至可执行程序所在目录,双击运行。 6. **查看测试结果**。在test_result.txt文件和test_result_negative.txt文件中,当然也可以自己修改脚本来自定义输出文件。 ## 3.5 注意事项 1. travodds的C++接口测试依赖travodds核心库、googletest测试框架、travoddsgen工具、cmake等。 2. 依赖googletest测试框架,需要链接其gtest库,在项目根目录resources/googletest是此框架的源码Release 1.12.0版本。 3. 当前项目构建过程中会自动调用上层目录resource/googletest中的cmake,作为子项目进行构建生成。 5. 在C++接口测试项目中提供了types文件夹,是测试过程中依赖的数据类型,包含两种数据类型idl文件。 6. 当前提供的类型支持文件由travoddsgen工具生成,如果travoddsgen工具发生了更新,或者travodds核心库的更新,都会直接影响到支持文件的可用性。因此,建议用户自行使用travoddsgen工具生成最新的支持文件,可有效防止构建编译时出错。 # 4 TRAVODDS_JAVA ## 4.1 项目简介 travodds的Java接口测试用例集合 ## 4.2 文件结构 ``` ┌── CMakeLists.txt # cmake构建配置文件 ├── pom.xml # Maven构建配置文件 ├── src/ # 测试代码目录 ├── sut/ # 被测系统目录(预留空目录) ├── run_test.bat # 快速测试脚本 ├── run_test.sh # 快速测试脚本 └── test_qos_config.xml # 测试配置文件 ``` ## 4.3 构建命令 ```bash # 构建 mvn dependency:resolve ``` ## 4.4 使用方法 - 通过Maven的CLI 1. **通过Maven构建工程**。主目录下有pom.xml配置文件,使用`mvn dependency:resolve`命令进行构建。 2. **生成可执行程序**。构建后会在`target/`目录下生成jar包和相关class文件。 3. **运行测试**。可以使用`mvn test`命令或run_test脚本运行所有测试用例。 4. **查看测试结果**。测试结果会在控制台输出,也可以在`target/surefire-reports`目录下查看详细报告。 - 通过IDEA(推荐) 1. **打开项目**。直接使用IDEA打开Java项目,无需构建。 2. **运行测试**。IDEA原生支持JUnit测试框架,直接点击测试用例方法前方的三角形运行按钮即可。 3. **查看测试结果**。在IDEA的输出窗口中直观地查看测试结果。 ## 4.5 注意事项 1. 当前项目的cmake文件只包含install过程,本质上还是由maven负责项目管理和构建,适配cmake是为了保证在travodds-autotest根目录执行统一构建时与其他子项目安装行为一致。 2. travodds的Java接口测试依赖travodds核心库、travodds-cpp库、travodds-Java库、travoddsgen工具、SWIG、Maven、JDK,由这些工具不同平台的版本来保障测试用例跨平台可用。 3. 测试程序依赖三个jar包以及各自的jni动态库,分别是travodds.jar、KeyedType.jar、NoKeyType.jar,对应travodds_jni库、KeyedType_jni库、NoKeyType_jni库,这些文件均需要通过上述工具生成。 4. 生成之后可将这些依赖都放置在"项目根/sut/"路径下,因为pom.xml中以该本地位置寻找这些jar包。如果您熟悉maven工具,标准的做法是将jar包通过命令,交给maven托管,则pom.xml中的这些内容可以去掉。 # 5 TRAVODDS_PYTHON ## 5.1 项目简介 travodds的Python接口测试用例集合 ## 5.2 文件结构 ``` ┌── CMakeLists.txt # cmake构建配置文件 ├── README.md # 项目说明文档 ├── requirements.txt # Python依赖库列表 ├── sut/ # 被测系统目录(预留空目录) ├── tests/ # 测试用例目录 ├── run_test.bat # 快速测试脚本 ├── run_test.sh # 快速测试脚本 └── test_qos_config.xml # 测试配置文件 ``` ## 5.3 构建命令 ```bash # 测试依赖 pip install -r requirements.txt ``` ## 5.4 使用方法 - 通过命令行 1. **安装依赖**。主目录下有`requirements.txt`,使用`pip install -r requirements.txt`安装依赖。 2. **运行测试**。进入`tests/`目录,可以使用`pytest`命令或run_test脚本运行所有测试用例。 3. **查看测试结果**。测试结果会在控制台输出,也可以配置pytest生成详细报告。 - 通过PyCharm(推荐) 1. **打开项目**。直接使用PyCharm打开Python项目,无需额外构建。 2. **运行测试**。PyCharm原生支持pytest,直接点击测试用例方法前方的运行按钮即可。 3. **查看测试结果**。在PyCharm的输出窗口中直观地查看测试结果。 ## 5.5 注意事项 1. 当前项目的cmake文件只包含install过程,由于python语言特性无需构建编译,适配cmake是为了保证在travodds-autotest根目录执行统一构建时与其他子项目安装行为一致。 2. travodds的Python的测试用例依赖travodds核心库、travodds-cpp库、travodds-python库、SWIG、Python、pytest框架,由这些工具不同平台的版本来保障测试用例跨平台可用。 3. 具体的依赖为travodds.py、KeyedType.py、NoKeyType.py以及对应的三个pyd动态库文件_travodds.pyd、\_KeyedType.pyd、\_NoKeyType.pyd,这些文件均需要通过上述工具生成。 4. 建议将这些py和pyd文件放置在"项目根/sut"目录下,以便run_test.bat/run_test.sh脚本能够正常识别。 # 6 TRAVODDS_RUST ## 6.1 项目简介 travodds的Rust接口测试用例集合 ## 6.2 文件结构 ``` ┌── CMakeLists.txt # cmake构建配置文件 ├── Cargo.toml # Rust项目配置文件 ├── build.rs # 构建脚本 ├── native/ # 原生库目录(预留空目录) ├── src/ # 待测源代码目录 ├── tests/ # 测试用例目录 ├── run_test.bat # 快速测试脚本 ├── run_test.sh # 快速测试脚本 └── test_qos_config.xml # 测试配置文件 ``` ## 6.3 构建命令 ```bat cargo build ``` ## 6.4 使用方法 - 通过命令行 1. **安装依赖并构建项目**。主目录下有`Cargo.toml`,使用`cargo build`命令进行构建。 2. **运行测试**。可以使用`cargo test`命令或run_test脚本运行所有测试用例。 3. **查看测试结果**。测试结果会在控制台输出,也可以通过`cargo test -- --nocapture`查看详细信息。 - 通过VScode/RustRover(推荐) 1. **打开项目**。直接使用VScode或RustRover的Rust插件打开项目,无需额外构建。 2. **运行测试**。VScode/RustRover原生支持Rust测试,直接点击测试用例方法前方的运行按钮即可。 3. **查看测试结果**。在VScode/RustRover的输出窗口中直观地查看测试结果。 ## 6.5 注意事项 1. 当前项目的cmake文件只包含install过程,本质上还是由Cargo负责项目管理和构建,适配cmake是为了保证在travodds-autotest根目录执行统一构建时与其他子项目安装行为一致。 2. travodds的Rust测试用例依赖travodds核心库、travodds-rust库、travodds-c库、Rust工具链、rstest框架等,由这些工具不同平台的版本来保障测试用例跨平台可用。 3. 具体依赖项为travodds.rs、KeyedType.rs、NoKeyType.rs,以及对应的静态库或动态库,这些文件均需要通过上述工具生成。 4. 建议将所有rs文件放在"项目根/src"目录下,静态库或者动态库放在"项目根/native"目录下,因为build.rs中指明了该目录,如果放在其他位置,cargo命令执行时无法找到。 # 7 总结 | 项目 | 构建方法 | 使用方法 | 依赖仓库 | 依赖工具 | | --------------- | ------------ | --------- | ---------------------------------------------------- | -------------------------------------- | | travodds_c | cmake + MSVC | 详见章节2 | travodds、travodds-c、travoddsgen | cmake、VS | | travodds_cpp | cmake + MSVC | 详见章节3 | travodds、travodds-cpp、travoddsgen | cmake、VS | | travodds_java | mvn | 详见章节4 | travodds、travodds-cpp、travodds-java、travoddsgen | JDK、Maven、IDEA、SWIG | | travodds_python | / | 详见章节5 | travodds、travodds-cpp、travodds-python、travoddsgen | Python发行版、PyCharm、SWIG | | travodds_rust | cargo build | 详见章节6 | travodds、travodds-c、travodds-rust、travoddsgen | Rust工具链、RustRover或VScode+Rust插件 |