GithubHelp home page GithubHelp logo

williamyinwei / treeate Goto Github PK

View Code? Open in Web Editor NEW
77.0 10.0 37.0 2.8 MB

TreeATE是Tree Automatic Test Equipment的缩写,专注服务于工厂成品或半成品测试自动化的一种开源软件工具平台。

Home Page: https://blog.csdn.net/vivasoft/column/info/31202

License: GNU Lesser General Public License v3.0

QMake 1.98% TypeScript 0.04% C++ 92.22% C 3.45% JavaScript 1.18% Python 0.79% Inno Setup 0.34%
ate test-platform automation

treeate's Introduction

Github issues Github release (latest SemVer) Github All Releases

TreeATE

TreeATE是Tree Automatic Test Equipment的缩写,专注服务于工厂成品或半成品测试自动化的一种开源软件工具平台。

目标

对接工业物联网,打造简单易用的工厂自动化测试开源软件工具。

系统架构

TreeATE系统架构图 TreeATE借鉴了Chrome的多进程设计思路,支持并行化测试。每个独立的测试进程由“Test Engine”承接。 TreeATE(GUI)是向工厂用户提供的HMI(人机交互界面),详见博客《开始使用TreeATE》。 “Test Engine”是TreeATE的核心,向下负责管理不同设备驱动,对接MES系统、测试结果输出(数据库)、图形化人机界面插件,向上接受不同种语言的测试用例(当前版本支持JavaScript和Python)和测试参数配置等数据。 通过TreeATE Dev可以编辑测试参数配置文件和开发测试用例。当然像上面提到的各种组件需要通过QT进行开发,详情的请关注TreeATE专栏,找到TreeATE组件或插件开发指南。

功能特性

  • 为工厂提供统一且简单易用的用户操作界面,减免每个产品测试都有不同的程序操作界面的学习成本;
  • 采用多进程技术,支持成品或半成品并行测试,测试运行时更加稳定;
  • 主界面支持中文和英文;
  • 支持测试工程整体循环测试;
  • 支持测试失败则停止测试;
  • 支持扫码加载测试工程;
  • 支持扫码开始测试;
  • 支持无服务器和网络自动切换为本地工作模式,测试结果本地留存;
  • 支持测试结果本地查看和管理;
  • 提供界面插件扩展接口;
  • 支持二次自定义开发(TreeATE Dev):
    • 支持QtScript(类JavaScript,基于ECMA标准脚本语言)快速开发自动化测试用例;
    • 支持Python语言开发自动化测试用例;
    • 提供设备控制组件化支持;
    • 提供辅助二次开发时所需的人机交互公共组件;
    • 提供TreeATE系统与MES系统的扩展接口和组件样例;
    • 支持测试参数CSV格式文件导入和导出;

TreeATE界面预览

TreeATE GUI 关于如何使用TreeATE,请点击这里

TreeATE Dev界面预览

TreeATE Dev GUI 关于如何使用TreeATE Dev,请点击这里

开发编译

TreeATE基于QT开发,运行于Windows 32位系统(支持64位)。在编译TreeATE之前,你需要安装以下开发工具:

  // 进入QT命令行模式  
  cd qt4qt5
  qmake
  // 进入VS 2015 x86命令行模式
  cd qt4qt5
  nmake
  nmake install 
  • PythonQt 3.2.0 LGPL v2.1
    • 请根据PythonQT的说明编译构建出dll和lib文件,例如PythonQT-Qt5-Python38.dll和PythonQT-Qt5-Python38.lib
    • 再将lib文件复制到 3part/PythonQT/lib目录下
  • Python38 32位 Python License (Python-2.0)

注意: 推荐统一采用32位编译,并选择Release配置运行

关于以上工具的安装和详细配置请参见它们的帮助文档。

设置环境变量

在Windows系统环境变量中添加如下2个环境变量,根据Python38的安装路径,例如

  • PYTHON_PATH C:\Python38\
  • PYTHON_LIB C:\Python38\libs\
  • PYTHON_VERSION 38

部署

在开始菜单中找到Qt 5.9.6 32-bit for Desktop(MSVC 2015)命令行窗口进入构建的目录。 例如:D:\Projects\build-TreeATE-Desktop_Qt_5_9_6_MSVC2015_32bit-Release\bin
再执行以下命令

  • windeployqt TestEngine.exe
  • windeployqt TreeATE.exe
  • windeployqt TreeATEDev.exe
  • windeployqt TreeResults.exe

打包成安装文件

依赖 Inno Setup

  • 通过 Inno Setup 打开 Setup/Setup.iss文件
  • 找到第37行,根据本地实际输出的构建目录替换掉路径D:\Projects\build-TreeATE-Desktop_Qt_5_9_6_MSVC2015_32bit-Release\bin
  • 再执行Build>>Compile(Ctrl+F9)或Run(F9)

运行

在试用运行之前,一般还需要以下几个操作:

  • 手动复制3part/PythonQt/lib/PythonQt-Qt5-PythonXXX.dll(xxx是你本地Python环境的版本号)。PythonQt-Qt5-PythonXXX.dll是通过PythonQt生成的库。

在构建的目录下启动TreeATE.exe即可。例如作者的开发构建目录为: D:\Projects\build-TreeATE-Desktop_Qt_5_9_6_MSVC2015_32bit-Release\bin\

技术交流

QQ:499722676/226406709

treeate's People

Contributors

sschaetz avatar williamyinwei avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

treeate's Issues

并行执行时总状态显示问题

多工工程并行测试时,有的工程测试失败,有的工程测试成功,右下角的总状态显示仍然为Pass。这种情况下,总状态应为Fail,因为Fail比Pass优先级高。Exception高于Fail高于Pass

超长结果会使得TreeATE崩溃

Describe the bug
超长结果会使得TreeATE崩溃

To Reproduce
__ate.OutputRst(name,value, stand)
参数name,value,stand中的字符串超长会导致TreeATE奔溃

再次编辑脚本时不可以保存

Describe the bug
再次编辑脚本时不可以保存

To Reproduce
发生步骤

  1. 编辑脚本保存后
  2. 再次编辑脚本
  3. 保存按键是灰色不可用

Desktop (please complete the following information):

  • OS: Windows
  • Version:10

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.