Skip to content

Latest commit

 

History

History
68 lines (53 loc) · 2.5 KB

CONTRIBUTING.md

File metadata and controls

68 lines (53 loc) · 2.5 KB

Contributing to YinTao

目录

  • 关于YinTao
  • 从源码构建
  • 测试新的版本
  • 贡献代码

关于YinTao

在你想参与贡献之前,首先你必须了解它,YinTao主要包含两块内容。 智能录制脚本执行,这是两个不同的方向。除此以外则是一些基本功能的 包装例如: 在线更新open-api等.

  • 智能录制: 监控用户访问目标页面,将用户操作转化为可稳定执行的目标代码。 其中主要采用electronwebview来实现,我们通过注入内置脚本,在通过脚本内容记录用户操作。有趣的是iframe以及file upload都在我们的记录范围。

  • 脚本执行
    脚本执行,将录制生成或手动编写的代码,解释并执行。 其中主要使用playweight作为核心驱动,但我们并没有直接使用而是改造了它,以使得更符合YinTao的理念。我们需要更轻量简洁的脚本,更少的预定义,更高的语义化,以及稳定可用的脚本内容,而不只是在本地,更多的内容参考YinTao-core

从源码构建

这里默认已安装node环境和 yarn, 如果没有清手动安装

# 克隆项目
git clone https://coding.jd.com/YinTao/YinTao.git
cd YinTao
# 安装依赖
yarn 

# 安装对应环境浏览器
# win
yarn chrome: win
# mac 
yarn chrome: mac

# 运行
yarn dev

测试新的版本

    yarn test

server-run

贡献代码

YinTao期望贡献者拉取请求符合某些标准。在提交拉取请求之前完成以下任务

  • 包括适当的测试:

    • 如果您的代码包含错误修复,请包括回归测试。
    • 如果您的代码引入了新功能,请包括单元测试和/或功能测试。
  • 符合代码规范

    1. 复杂函数必须采用中文注释,不建议使用函数同名中文注释,注释仅表达坑点,而非实现。
    2. 字符串强制使用 ' 单引号,禁止非必要的;符号。
    3. 引用对象必须给明,强制类型,禁止传递any等不明确内容。
    4. 新功能必须添加单元测试,上线前单元测试必须通过。
    5. 禁止在非必要的时候写大函数,避免代码臃肿,单一使用的地方禁止封装函数(除非它可能被调用)。
  • 请记住,团队可能会暂停或拒绝拉取请求。发生这种情况的原因有多种:

    • 未能满足代码贡献要求。
    • 质量差的代码。
    • 其他发展优先事项可能优先。