diff --git a/zh-cn/device-dev/device-test/figures/FAQ-1.PNG b/zh-cn/device-dev/device-test/figures/FAQ-1.PNG
new file mode 100644
index 0000000000000000000000000000000000000000..bebb315141c4cc3c004b502bb288705c8af9ebd8
Binary files /dev/null and b/zh-cn/device-dev/device-test/figures/FAQ-1.PNG differ
diff --git a/zh-cn/device-dev/device-test/figures/result-1.PNG b/zh-cn/device-dev/device-test/figures/result-1.PNG
new file mode 100644
index 0000000000000000000000000000000000000000..64c730feade073029102459e92c01f8ff885f51d
Binary files /dev/null and b/zh-cn/device-dev/device-test/figures/result-1.PNG differ
diff --git a/zh-cn/device-dev/device-test/xdevice.md b/zh-cn/device-dev/device-test/xdevice.md
index d775060fb24ae40bc6f5f38cf66d90e6ab7958e7..61f3ee0665b7ced325af3507a5c77c63c3353e3c 100644
--- a/zh-cn/device-dev/device-test/xdevice.md
+++ b/zh-cn/device-dev/device-test/xdevice.md
@@ -12,114 +12,114 @@ xDevice测试调度框架是OpenHarmony中测试基础设施的核心组件,
根据设备类型的不同,xDevice主要测试的任务场景有以下三个:
- 对轻量系统设备进行XTS测试(如:Hi3861开发板)
-- 对小型系统设备进行XTS测试(如:HI3516开发板)
+- 对小型系统设备进行XTS测试(如:Hi3516开发板)
- 对标准系统设备进行XTS测试(如:RK3568开发板)
-## 实现原理
+### 实现原理
xDevice包括以下功能模块:
-- command,用户与测试平台命令行交互模块,提供用户输入命令解析,命令处理。
-- config,测试框架配置模块,提供测试平台串口连接方式和USB连接方式的不同配置选项。
-- driver,测试用例执行器,提供测试用例分发,执行,结果收集等主要测试步骤定义。
-- report,测试报告模块,提供测试结果解析和测试报告生成。
-- scheduler,测试框架调度模块,提供不同类型的测试执行器调度的调度功能。
-- environment,测试框架的环境配置模块,提供设备发现,设备管理的功能。
-- testkit,测试框架工具模块,提供json解析,网络文件挂载等操作。
-- log,测试框架日志模块,提供记录任务日志以及设备日志的功能。
-
-除了上述功能模块之外,测试调度框架还依赖了用户自定义配置文件,配置文件主要分为两类:
-
-- **测试任务配置文件**
-
-user_config.xml是框架提供的测试任务配置文件,用户可以根据自身环境信息配置相关内容,主要包括以下配置内容:
-
-1. environment环境相关配置,详解介绍如下:
-
- ```xml
-
-
-
-
-
-
-
-
-
-
-
-
-
- cmd
- 115200
- 8
- 1
- 20
-
-
-
- deploy
- 115200
-
-
-
-
-
-
-
- cmd
- 115200
- 8
- 1
- 1
-
-
-
-
-
-
-
-
-
- ```
-
-2. 测试用例目录设置
+- command:用户与测试平台命令行交互模块,提供用户输入命令解析,命令处理。
+- config:测试框架配置模块,提供测试平台串口连接方式和USB连接方式的不同配置选项。
+- driver:测试用例执行器,提供测试用例分发,执行,结果收集等主要测试步骤定义。
+- report:测试报告模块,提供测试结果解析和测试报告生成。
+- scheduler:测试框架调度模块,提供不同类型的测试执行器调度的调度功能。
+- environment:测试框架的环境配置模块,提供设备发现,设备管理的功能。
+- testkit:测试框架工具模块,提供json解析,网络文件挂载等操作。
+- log:测试框架日志模块,提供记录任务日志以及设备日志的功能。
+
+除了上述功能模块之外,测试调度框架还依赖了用户自定义配置文件,配置文件主要分为两类。
+
+**测试任务配置文件**
+
+user_config.xml是框架提供的测试任务配置文件,用户可以根据自身环境信息配置相关内容,主要包括以下配置内容。
+
+environment环境相关配置,详解介绍如下。
+
+```xml
+
+
+
+
+
+
+
+
+
+
+
+
+
+ cmd
+ 115200
+ 8
+ 1
+ 20
+
+
+
+ deploy
+ 115200
+
+
+
+
+
+
+
+ cmd
+ 115200
+ 8
+ 1
+ 1
+
+
+
+
+
+
+
+
+
+```
- ```xml
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- ```
+测试用例目录设置。
+
+```xml
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+```
-3. 资源目录设置
+资源目录设置。
- ```xml
-
-
-
-
- ```
+```xml
+
+
+
+
+```
-4. 日志打印级别设置
+日志打印级别设置。
- ```xml
-
- INFO
- ```
+```xml
+
+INFO
+```
-- **测试套配置文件**
+**测试套配置文件**
设备执行的测试支撑套件是由测试配置文件所指定。
@@ -165,100 +165,100 @@ user_config.xml是框架提供的测试任务配置文件,用户可以根据
}
```
-#### 测试命令
+### 测试命令
-框架指令可以分为三组:help、list、run。在指令序列中,以run为最常用的执行指令
+测试命令可以分为三组:help、list、run。在指令序列中,以run为最常用的执行指令。
-1. help
+------
- 输入help指令可以查询框架指令帮助信息。
+输入help指令可以查询框架指令帮助信息。
- ```
- help:
- use help to get information.
- usage:
- run: Display a list of supported run command.
- list: Display a list of supported device and task record.
- Examples:
- help run
- help list
- ```
+```
+help:
+ use help to get information.
+usage:
+ run: Display a list of supported run command.
+ list: Display a list of supported device and task record.
+Examples:
+ help run
+ help list
+```
- **说明:**
+**说明:**
- help run:展示run指令相关说明 。
+help run:展示run指令相关说明 。
- help list:展示 list指令相关说明。
+help list:展示 list指令相关说明。
-2. list
+------
- list指令用来展示设备和相关的任务信息。
+list指令用来展示设备和相关的任务信息。
- ```
- list:
- This command is used to display device list and task record.
- usage:
- list
- list history
- list
- Introduction:
- list: display device list
- list history: display history record of a serial of tasks
- list : display history record about task what contains specific id
- Examples:
- list
- list history
- list 6e****90
- ```
+```
+list:
+ This command is used to display device list and task record.
+usage:
+ list
+ list history
+ list
+Introduction:
+ list: display device list
+ list history: display history record of a serial of tasks
+ list : display history record about task what contains specific id
+Examples:
+ list
+ list history
+ list 6e****90
+```
- **说明:**
+ **说明:**
- list: 展示设备信息。
+ list: 展示设备信息。
- list history: 展示任务历史信息 。
+ list history: 展示任务历史信息 。
- list : 展示特定id的任务其历史信息。
+ list : 展示特定id的任务其历史信息。
-3. run
+------
- run指令主要用于执行测试任务。
+run指令主要用于执行测试任务。
- ```
- run:
- This command is used to execute the selected testcases.
- It includes a series of processes such as use case compilation, execution, and result collection.
- usage: run [-l TESTLIST [TESTLIST ...] | -tf TESTFILE
- [TESTFILE ...]] [-tc TESTCASE] [-c CONFIG] [-sn DEVICE_SN]
- [-rp REPORT_PATH [REPORT_PATH ...]]
- [-respath RESOURCE_PATH [RESOURCE_PATH ...]]
- [-tcpath TESTCASES_PATH [TESTCASES_PATH ...]]
- [-ta TESTARGS [TESTARGS ...]] [-pt]
- [-env TEST_ENVIRONMENT [TEST_ENVIRONMENT ...]]
- [-e EXECTYPE] [-t [TESTTYPE [TESTTYPE ...]]]
- [-td TESTDRIVER] [-tl TESTLEVEL] [-bv BUILD_VARIANT]
- [-cov COVERAGE] [--retry RETRY] [--session SESSION]
- [--dryrun] [--reboot-per-module] [--check-device]
- [--repeat REPEAT]
- action task
- Specify tests to run.
- positional arguments:
- action Specify action
- task Specify task name,such as "ssts", "acts", "hits"
- ```
+```
+run:
+ This command is used to execute the selected testcases.
+ It includes a series of processes such as use case compilation, execution, and result collection.
+usage: run [-l TESTLIST [TESTLIST ...] | -tf TESTFILE
+ [TESTFILE ...]] [-tc TESTCASE] [-c CONFIG] [-sn DEVICE_SN]
+ [-rp REPORT_PATH [REPORT_PATH ...]]
+ [-respath RESOURCE_PATH [RESOURCE_PATH ...]]
+ [-tcpath TESTCASES_PATH [TESTCASES_PATH ...]]
+ [-ta TESTARGS [TESTARGS ...]] [-pt]
+ [-env TEST_ENVIRONMENT [TEST_ENVIRONMENT ...]]
+ [-e EXECTYPE] [-t [TESTTYPE [TESTTYPE ...]]]
+ [-td TESTDRIVER] [-tl TESTLEVEL] [-bv BUILD_VARIANT]
+ [-cov COVERAGE] [--retry RETRY] [--session SESSION]
+ [--dryrun] [--reboot-per-module] [--check-device]
+ [--repeat REPEAT]
+ action task
+Specify tests to run.
+ positional arguments:
+ action Specify action
+ task Specify task name,such as "ssts", "acts", "hits"
+```
- **说明:** run指令基本使用方法如下:
+run指令基本使用方法如下。
- | xDevice命令 | 功能 | 示例 |
- | :----------: | :----------------------------------------------------------: | :----------------------------------------------------------: |
- | run xts | 运行所有指定类型的XTS模块,如acts,hits,ssys等 | run acts |
- | run -l xxx | 运行指定的模块测试套,模块间用分号隔离 | run -l ActsWifiServiceTest;ActsLwipTest |
- | run -sn | 指定运行设备的SN好,多个SN号用分号隔离 | run acts -sn 10.117.183.37:17001
run acts -sn 88Y02******57723;VEG02******16642 |
- | run -rp | 指定报告生成的路径,默认会在工作目录的reports下用时间戳或任务ID建立子目录 | run acts -rp /suites/hits/xdevice_reports/2020.09.28-14.21.26 |
- | run -respath | 指定测试资源路径,默认为resource目录 | run acts -respath /cloud/zidane/xts/release/suites/resource |
- | run -ta | 指定模块运行参数,可以指定运行模块用例中指定的用例,多个用例用逗号隔离,目前支持JS驱动测试套 | run acts -ta class:ohos.hardware.soundtrigger.SoundTriggerTest#testKeyphraseParcelUnparcel_noUsers |
- | run --retry | 重新运行上一次任务的失败用例,重新生成新的测试报告 | run –retryrun --retry --session 2020-10-30-17-15-11(任务目录名) |
+| xDevice命令 | 功能 | 示例 |
+| :----------: | :----------------------------------------------------------: | :----------------------------------------------------------: |
+| run xts | 运行所有指定类型的XTS模块,如acts,hits,ssys等 | run acts |
+| run -l xxx | 运行指定的模块测试套,模块间用分号隔离 | run -l ActsWifiServiceTest;ActsLwipTest |
+| run -sn | 指定运行设备的SN号,多个SN号用分号隔离 | run acts -sn 10.117.183.37:17001
run acts -sn 88Y02******57723;VEG02******16642 |
+| run -rp | 指定报告生成的路径,默认会在工作目录的reports下用时间戳或任务ID建立子目录 | run acts -rp /suites/hits/xdevice_reports/2020.09.28-14.21.26 |
+| run -respath | 指定测试资源路径,默认为resource目录 | run acts -respath /cloud/zidane/xts/release/suites/resource |
+| run -ta | 指定模块运行参数,可以指定运行模块用例中指定的用例,多个用例用逗号隔离,目前支持JS驱动测试套 | run acts -ta class:ohos.hardware.soundtrigger.SoundTriggerTest#testKeyphraseParcelUnparcel_noUsers |
+| run --retry | 重新运行上一次任务的失败用例,生成新的测试报告 | run –retryrun --retry --session 2020-10-30-17-15-11(任务目录名) |
-#### 测试报告
+### 测试报告
框架执行run指令,控制台会输出对应的log打印,还会生成对应的执行结果报告。如果使用了-rp参数指定报告路径,那么报告就会生成在指定的路径下。否则报告会存放在默认目录。
@@ -297,56 +297,72 @@ user_config.xml是框架提供的测试任务配置文件,用户可以根据
### 安装xDevice
-- 安装基础框架xDevice
+- 安装基础框架xDevice。
- 1. 进入xDevice根目录;
+ 1. 进入xDevice根目录。
+
+ ```
+ cd testfwk_xdevice
+ ```
- 2. 打开控制台,执行如下命令:
+ 2. 打开控制台,执行如下命令。
```bash
python setup.py install
```
-- 安装OpenHarmony驱动插件ohos
-
- 1. 进行plugin/ohos目录;
+- 安装OpenHarmony驱动插件ohos。
- 2. 打开控制台,执行如下命令:
+ 1. 进行plugin/ohos目录。
+ ```
+ cd testfwk_xdevice/plugin/ohos
+ ```
+
+ 2. 打开控制台,当前用户下执行如下命令。
+
```bash
python setup.py install
```
### 检验环境是否搭建成功
-#### 检验xDevice是否安装成功
+检验xDevice是否安装成功。
-1. 进入xDevice根目录;
+1. 进入xDevice根目录。
-2. 打开控制台,执行如下命令:
+ ```
+ cd testfwk_xdevice
+ ```
+
+2. 打开控制台,执行如下命令。
```bash
python -m pip list
```
-3. 查看是否已经成功安装xdevice以及xdevice-ohos两个库;
+3. 查看是否已经成功安装**xdevice**以及**xdevice-ohos**两个库。
```
xdevice 0.0.0
xdevice-ohos 0.0.0
```
-#### 查看xDevice工具是否能够正常运行
+查看xDevice工具是否能够正常运行。
+
+1. 进入xDevice根目录。
-1. 进入xDevice根目录;
+ ```
+ cd testfwk_xdevice
+ ```
-2. 打开控制台,执行如下命令:
+2. 打开控制台,执行如下命令。
```
python -m xdevice
```
-3. 查看控制台是否正常输出如下信息:
+3. 查看控制台是否正常输出如下信息。
```
[2022-10-13 15:43:31,284] [30076] [Main] [INFO] [*************** xDevice Test Framework 2.11.0.1091 Starting ***************]
@@ -359,17 +375,17 @@ user_config.xml是框架提供的测试任务配置文件,用户可以根据
## 轻量系统设备XTS测试指导(wifiiot)
-1. 识别串口用途,修改根目录中的user_config.xml文件;
+1. 识别串口用途,修改根目录中的user_config.xml文件。
- type为cmd的com口对应板子上的AT命令串口,用于对设备发送指令,例子中配置为ChA(COM20)串口号;
+ type为cmd的com口对应板子上的AT命令串口,用于对设备发送指令,示例中配置为ChA(COM20)串口号。
- type为deploy的com口对应板子上的日志输出串口,用于镜像烧录和日志打印,例子中配置为ChB(COM18)串口号;
+ type为deploy的com口对应板子上的日志输出串口,用于镜像烧录和日志打印,示例中配置为ChB(COM18)串口号。
- PS:若AT命令串口和日志输出串口共用,可以配置为相同。
+ 若AT命令串口和日志输出串口共用,可以配置为相同,即user_config中的type为cmd的com口与type为deploy的com口可配置为一样的端口,如COM18。

- user_config.xml示例如下:
+ user_config.xml的修改示例如下。
```xml
@@ -408,9 +424,9 @@ user_config.xml是框架提供的测试任务配置文件,用户可以根据
```
-2. 在xDevice根目录下新建testcase文件夹用于存放测试套文件,具体XTS测试套从系统构建的版本中获取,或参考官方进行构建。
+2. 在xDevice根目录下新建testcase文件夹用于存放测试套文件,具体XTS测试套从系统构建的[每日版本](http://ci.openharmony.cn/dailys/dailybuilds)中获取。
- 测试套测试配置文件json,示例如下
+ 测试套测试配置文件json,示例如下。
```json
{
@@ -436,37 +452,41 @@ user_config.xml是框架提供的测试任务配置文件,用户可以根据
3. 执行用例
- 进入xDevice根目录;打开控制台进入xDevice控制台,执行如下命令:
+ 进入xDevice根目录;打开控制台进入xDevice控制台,执行如下命令。
```bash
python -m xdevice
```
- 执行测试套命令:
+ 执行测试套命令。
```
run -l ActsAllTest
```
+
+ 执行结果如下。
+
+ 
## 小型系统设备XTS测试指导(ipcamera)
-1. 识别串口用途,配置NFS服务器,修改根目录中的user_config.xml文件;
+1. 识别串口用途。
- type为cmd的com口对应板子上的AT命令串口,用于对设备发送指令,例子中配置为ChA(COM20)串口号;
+ type为cmd的com口对应板子上的AT命令串口,用于对设备发送指令,例子中配置为ChA(COM20)串口号。
ipcamera设备有两种连接方式,一种是本地串口连接,一种是通过局域网ip连接。
+2. 配置NFS服务器
+
NFS挂载方式有两种,一种是远程PC挂载方式,一种是本地局域网挂载方式。
本地局域网NFS服务的配置方法如下。
- - 下载安装NFS服务器
+ - 下载安装[NFS服务器](https://www.hanewin.net/nfs-e.htm)。
- 下载地址:https://www.hanewin.net/nfs-e.htm
-
- - 配置输出->编辑输出表文件
+ - 配置输出->编辑输出表文件。
@@ -476,11 +496,11 @@ user_config.xml是框架提供的测试任务配置文件,用户可以根据
- 停止NFS服务器->重启运行NFS服务器使刚才添加的共享路径生效。
- - 找到ipcamera设备在PC上面映射的网口:控制面板->网络和Internet->网络共享中心->以太网状态->以太网属性->手动设置IP地址为:192.168.1.11.
+ - 找到ipcamera设备在PC上面映射的网口:控制面板->网络和Internet->网络共享中心->以太网状态->以太网属性->手动设置IP地址为:192.168.1.11。
- 配置完NFS,ipcamera的user_config.xml示例如下:
+3. 修改根目录中的user_config.xml文件,示例如下。
```xml
@@ -524,7 +544,7 @@ user_config.xml是框架提供的测试任务配置文件,用户可以根据
```
-2. 在xDevice根目录下新建testcase文件夹用于存放测试套文件,具体XTS测试套从系统构建的版本中获取,或参考官方进行构建。
+4. 在xDevice根目录下新建testcase文件夹用于存放测试套文件,具体XTS测试套从系统构建的[每日版本](http://ci.openharmony.cn/dailys/dailybuilds)中获取。
测试套测试配置文件json,示例如下。
@@ -556,37 +576,37 @@ user_config.xml是框架提供的测试任务配置文件,用户可以根据
}
```
-3. 执行用例
+5. 执行用例。
- 进入xDevice根目录,打开控制台进入xDevice控制台,执行如下命令:
+ 进入xDevice根目录,打开控制台进入xDevice控制台,执行如下命令。
```bash
python -m xdevice
```
-
- 执行测试套命令:
+
+ 执行测试套命令。
```
run -l kernel
```
-## 标准系统设备XTS测试指导(RK3568)
+ 执行结果如下。
-1. 配置hdc工具,从CI上下载ohos_sdk最新版本即可。
+ 
- CI地址:http://ci.openharmony.cn/dailys/dailybuilds
+## 标准系统设备XTS测试指导(RK3568)
- 下载工具后,把hdc配置到环境变量中。
+1. 配置hdc工具,从[CI](http://ci.openharmony.cn/dailys/dailybuilds)上下载ohos_sdk最新版本即可。
-2. 检查设备是否正常。
+ 下载工具后,把hdc配置到环境变量中,配置方法:右键单击我的电脑->属性->高级系统设置->环境变量->Path。
- 执行如下命令查看设备是否正常连接。
+2. 执行如下命令查看设备是否正常连接。
```bask
hdc_std list targets
```
-
-3. 修改user_config.xml文件
+
+3. 修改user_config.xml文件,示例如下。
```xml
@@ -607,7 +627,7 @@ user_config.xml是框架提供的测试任务配置文件,用户可以根据
```
-4. 在xDevice根目录下新建testcase文件夹用于存放测试套文件,具体XTS测试套从系统构建的版本中获取,或参考官方进行构建。
+4. 在xDevice根目录下新建testcase文件夹用于存放测试套文件,具体XTS测试套从系统构建的[每日版本](http://ci.openharmony.cn/dailys/dailybuilds)中获取。
测试套测试配置文件json,示例如下。
@@ -640,26 +660,35 @@ user_config.xml是框架提供的测试任务配置文件,用户可以根据
}
```
-5. 执行用例
+5. 执行用例。
- 进入xDevice根目录,打开控制台进入xDevice控制台,执行如下命令:
+ 进入xDevice根目录,打开控制台进入xDevice控制台,执行如下命令。
```bash
python -m xdevice
```
- 执行测试套命令:
+ 执行测试套命令。
```
run -l ActBmsStageEtsTest
```
-
+
+ 执行结果如下。
+
+ 
## 常见问题
-### 1.hdc list targets能查找到设备,但xDevice识别不到设备。
+### hdc list targets能查找到设备,但xDevice识别不到设备。
+
+**问题描述**
+
+出现如下错误。
+
+
-**原因**
+**可能原因**
环境变量中曾设置过HDC_SERVER_PORT变量修改过hdc的端口,由于xDevice默认需要使用8710端口,若曾修改过该端口会导致xDevice框架无法识别设备。