1.实操依据
本实操总结依据是OH官方指导文档:
1.OpenHarmony-标准设备系统代码操作梳理:
链接,九.代码上库部分
2.OpenHarmony社区代码操作总结:
链接,代码上库部分
2.求助通道
3.DCO协议(开发者原创声明协议)签署
签署链接,邮箱:自己工作邮箱,比如:
wanggang311@huawei.com,按下图一步一步操作。
4.登录码云fork代码xts_acts仓
我自己的fork仓:
链接
4.1点击登录码云fork后,按照下面截图点击fork,创建自己的远程仓库。
预期结果:
![](https://img-blog.csdnimg.cn/39ced676c8e644159fde1483ed615012.png)
![](https://img-blog.csdnimg.cn/3239fb9962754bcda3015021058a39d8.png)
4.2仓库正在刷新并且从在从主干拉取acts仓代码
预期结果:
![](https://img-blog.csdnimg.cn/8353d3eeac1045979752a68acf356248.png)
4.3拉取完成后,就会在这里显示自己远程仓从主干拉取到的acts仓代码。
注意:每次准备上库时,先点击自己的这个远程仓库xts_acts后面的刷新按钮,从主干下载最新的代码,保证每次自己编辑修改的代码都是最新的,避免因为代码不是最新的引起的冲突。
预期结果:
![](https://img-blog.csdnimg.cn/47f0e243d6f54040b9342567afba52cb.png)
5.Linux环境/home/wg123目录下新建文件夹wg
命令:
cd ~
pwd
mkdir wg
ll
预期结果:
![](https://img-blog.csdnimg.cn/14dec2a38d0c4fcba9afa7b124bb7a72.png)
6.下载自己远程仓库xts_acts下的代码到本地
6.1.进入新建的文件夹
命令:
cd wg
6.2下载代码
复制远程仓库地址
![](https://img-blog.csdnimg.cn/d409c88eae434bebb0526fc08cc54ab3.png)
命令:
git clone https://gitee.com/gang-gang123/xts_acts.git
下载完成,预期结果:
![](https://img-blog.csdnimg.cn/2a0f579e2f2b4e5e919b9c2739bfb1e2.png)
如果执行命令报错fatal: destination path 'xts_acts' already exists and is not an empty directory
![](https://img-blog.csdnimg.cn/e1887383f81443aa966eac8abc3f84e7.png)
删除xts_acts_1_1仓,命令:
rm -rf xts_acts_1_1/
删除xts_acts仓,命令:
rm -rf xts_acts
预期结果:
![](https://img-blog.csdnimg.cn/48aabeb71f324117b48417a8998bfe0b.png)
重新下载代码,命令:
git clone https://gitee.com/gang-gang123/xts_acts.git
下载成功,预期结果:
![](https://img-blog.csdnimg.cn/fa37161ac54643a8a6453ea312d926ef.png)
7.在本地修改代码
操作步骤如下:
7.1找到代码存放的盘
![](https://img-blog.csdnimg.cn/32d216bf0b214924a0da68fc40c0cd39.png)
7.2找到代码存放的路径
![](https://img-blog.csdnimg.cn/60ad3502ff2b4c508426aa429ae08ca0.png)
7.3在IDE中编辑代码
注意:最好是在OpenHarmony官方的IDE DevEco Studio里编写用例代码,因为其他IDE编写的代码可能会有问题:格式问题等等,上库后可能出现乱码。而且DevEco Studio写完用例可以可以直接运行并查看结果。
DevEco Studio下载链接,安装根据官方教程一步一步操作就行。
或者教程里推荐的Visual Studio Code
![](https://img-blog.csdnimg.cn/7d7c9939283445ffbda66df81de68cd4.png)
7.4运行用例并查看报告
运行自己编写好的用例并查看报告
运行用例查看结果的时机有4个:1.在DevEco Studio编辑完用例后直接运行查看结果,2.自己在本地编译并执行查看结果,操作步骤参考OpenHarmony-标准设备系统代码操作梳理:
链接,七、测试套编译并执行,3.PR编译构建完毕后,从PR单里的编译结果链接里下载自动编译的xts用例到本地执行并查看结果,4.编译PR编译构建完毕后,从PR单里的编译结果链接里查看编译运行报告并直接截图(功能已有,待门禁开发配置)
8.git查看本地修改
8.1进入本地代码仓xts_acts
命令:
cd xts_acts
8.2.git查看本地代码仓变更状态
命令:
git status
预期结果:
![](https://img-blog.csdnimg.cn/ebdae310e36d4a778dd76f726467af16.png)
9.将xts_acts整个目录下修改的所有文件(包含隐藏文件)修改的代码提交到git的暂存区
命令:
git add .
预期结果:
![](https://img-blog.csdnimg.cn/7d31cd4d6c4546f2903400e331dc642d.png)
10.把当前提交的更改添加到git暂存区中,并添加及显示简短提交信息。
命令:
git commit -sm "xxxxxx" //xxxxx为提交信息描述,如git commit -sm "test",待办:得确认下规范怎么填
git commit -sm "add Pointer_PointerStyleTest_Exception_Test_003"
预期结果:
![](https://img-blog.csdnimg.cn/848f8cbdd7df4a12bb21008248e8b2ae.png)
11.从Git LFS存储库中获取所有存储的远程文件,并将其添加到本地仓库中。
命令:
git lfs fetch --all
预期结果:
![](https://img-blog.csdnimg.cn/0d68850a812c428daf5efc0db0d35b28.png)
12.将本地仓库的更改推送到码云远端fork的仓库中。
这一步执行后就可以在码云远端fork仓中看到自己修改的代码了。
push的fork仓路径获取方法
12.1进入个人主页
![](https://img-blog.csdnimg.cn/1140bade84f9436b9b4f31e0309e48a6.png)
12.2点击进入自己要push的远程仓库
![](https://img-blog.csdnimg.cn/efd131367d55412d8c580fa2eb03d73f.png)
12.3获取远程仓库地址
![](https://img-blog.csdnimg.cn/67791f216d8842239b35a4a7bd0b19ce.png)
12.4将本地仓库的更改推送到码云远端fork的仓库中
命令:
#执行3或2,一般执行3
git push https://gitee.com/gang-gang123/xts_acts wanggang_upku:refs/heads/startup0606
git push https://gitee.com/gang-gang123/xts_acts
其中,gang-gang123是自己的码云用户名,xts_acts是fork的代码仓,upup是Ubuntu本地repo建的分支,startup0625是本地提交分支命令,随意命令,不创建默认是maser分支(这是给码云远端个人仓本次提交所创建的分支)。
说明:第一次push,需要输入username和password,用户名输入码云用户名,密码是码云登录密码;输入后回车,重新执行git push操作即可。
预期结果:
![](https://img-blog.csdnimg.cn/1a7490ccf0744bf2ba77202a6b703cd5.png)
13.新建Pull Request也就是PR单将远端个人仓库同步到主干仓
xts_acts: Application compatibility test suite | acts应用兼容性测试套
注意:这儿是从远端fork的个人仓中同步(下图左边源分支这儿是个人码云用户名,而不是OpenHarmony),不知道的按如下操作:个人账户中点击个人主页——选择xts_acts——Pull Request——新建Pull Request——选择源分支同步到目标分支;
13.1进入码云远端个人仓库
![](https://img-blog.csdnimg.cn/9d3160b72755438cadb4e7368e92b543.png)
13.2点击新建PR
![](https://img-blog.csdnimg.cn/5a18042338b148638e89a379f9338c62.png)
13.3在远端个人代码仓查看自己提交的代码
检查是否正确
![](https://img-blog.csdnimg.cn/e8cbcaa20aa94c5887d7840545348349.png)
13.4填写PR单
待办事项:确认清楚PR单的填写规范,并更新到本总结里
【startup_standard】【OpenHarmony-4.0-Beta1】fix case...
![](https://img-blog.csdnimg.cn/dbdc7294200d408a91a81d6999ee26bb.png)
13.5评论start build,代码开始编译构建
点击创建后,在评论区评论start build,
代码开始构建:自动触发编译和测试以及静态检查,全部通过后,会有审核人员审核合入;
![](https://img-blog.csdnimg.cn/16dd122f001b448b82eb48dfd2549447.png)
![](https://img-blog.csdnimg.cn/c0fb6d1d37254781838ca24c674d4a38.png)
13.6提示没有关联issue,开始关联
![](https://img-blog.csdnimg.cn/757af5b2b63644b8aebc05069c329b78.png)
待办事项:也可以使用一行命令自动创建PR单,快速高效。具体待实验操作,并更新到该总结里
13.6.1点击切换到issue页,点击新建issue
![](https://img-blog.csdnimg.cn/44d55fdec0a44225945bbd34e71fbf81.png)
13.6.2按照issue来源类别进行选择
![](https://img-blog.csdnimg.cn/7afbbd498efb47fb9ab0f00f6f83d0ad.png)
13.6.3编辑issue
待办事项:确认清楚issue规范,并更新至本总结里。
![](https://img-blog.csdnimg.cn/e709eb7cc2f7482cb1f5193b60391102.png)
13.6.4复制刚刚新建的issue链接
准备往PR关联里填写新建的issue链接和PR关联,同时也可以在下面issue页右侧填写PR信息直接关联PR
![](https://img-blog.csdnimg.cn/75ea19c19c7c4de3a298bb490eda1570.png)
13.6.5在提交PR描述里添加 issue链接
点击切换到PR页,找到自己刚刚创建的PR
13.6.5.1首先进入主干xts仓库,在主干仓库找自己创建的PR,PR是建在主干仓库下的。
![](https://img-blog.csdnimg.cn/1f2567bc3b3b44f59e3f7468ece29362.png)
13.6.5.2进入主干xts仓库后,选择我创建的,从我创建的PR里快速找到刚刚创建的PR
![](https://img-blog.csdnimg.cn/98c9a2e3557d4e8b83418f0591c36b38.png)
13.6.5.3找到自己创建的PR,点击PR进入关联issue。
![](https://img-blog.csdnimg.cn/4c4c7a5c2fe3433c834a23f8dd08215b.png)
13.6.5.4关联issue单
![](https://img-blog.csdnimg.cn/e48ebf3b416941d29b0c7ba9b2fbea50.png)
13.6.5.5issue和PR关联完成
![](https://img-blog.csdnimg.cn/fc241a29b09143a49795cd2c0dc80b85.png)
13.6.5.6在PR里编辑issue信息
![](https://img-blog.csdnimg.cn/c433db938ba8445b9614945c777e41f6.png)
如图,PR和issue已相互关联:
![](https://img-blog.csdnimg.cn/feb2bb8374f14b52976932982ce591ec.png)
![](https://img-blog.csdnimg.cn/fecd4dfc84b64a7db270acec91b9d0e7.png)
14.获取编译后的版本进行自测试
![](https://img-blog.csdnimg.cn/6cc0bb742acb4d9b913ac7b147a17616.png)
![](https://img-blog.csdnimg.cn/27b9a245fd044c8289b5ba9d9cff4ca2.png)
15.执行PR里自动编译构建后的版本
点击run.bat后
命令:list检查有没有链接测试设备RK3568,设备链接是否正常
list
命令:只执行多模的所有ACTS用例
run acts -l ActsMultimodalinputJSApiTest;ActsMultimodalInputEtsTest
![](https://img-blog.csdnimg.cn/06a0141078164958bae49af8b049c880.png)
![](https://img-blog.csdnimg.cn/cd858b6560d347218002d1d662bc57bf.png)
![](https://img-blog.csdnimg.cn/76bc2a5da1504b3bb2e9d56bbdd82e73.png)
![](https://img-blog.csdnimg.cn/4bfcc378f3bc4b668965379f0fbc6736.png)
![](https://img-blog.csdnimg.cn/5f69a7e1ca244859bd16de66e904d931.png)
![](https://img-blog.csdnimg.cn/b274465c0ff042a68b2a1d0fb3e2dac7.png)
16.在PR中上传PR系统编译构建后的自测试报告截图
16.1在PR页面点击编辑按钮
![](https://img-blog.csdnimg.cn/c6d7954010124ac59a7e86a67bcdb70b.png)
16.2粘贴截图并输入截图信息,保存
16.3编译后的测试报告截图展示在PR最上面
![](https://img-blog.csdnimg.cn/240f8af8f67046aa9c6f3d3e4faf619c.png)
找组内检视同事陈康检视和cmmitter纪永审核加分,完成后PR单如果变成已合入状态,就表明xts用例从远程fork仓gang-gang123/xts_acts合入主干仓OpenHarmony/xts_acts成功,这时蓝区主干代码会立刻自动同步到黄区开发分支,自己的码云主邮箱会收到系统自动触发发送的一个蓝黄同步合入黄区分支成功的邮件,也就是蓝区主干代码会立刻自动同步到黄区开发分支的邮件
在邮件里点击链接,进入页面进行挑单,挑单到黄区主干分支,并找组内检视同事陈康检视和cmmitter纪永审核加分,经过24小时左右代码从黄区开发分支合入主干成功。