# auto_test_keyboard **Repository Path**: zc119/auto_test_keyboard ## Basic Information - **Project Name**: auto_test_keyboard - **Description**: 关于输入法的自动化框架 - **Primary Language**: Python - **License**: MulanPSL-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2023-01-03 - **Last Updated**: 2023-01-09 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # kika-automator-2.0 -- 首先感谢所有贡献者,感谢工程首创者-Mr.罗; 后续由-Mr.张进行优化; 工程所有者为全体测试组成员。 ### 目的 > 为实现数据驱动,节省手工测试时间,重新优化脚本结构 ### 软件架构说明 > python+pytest+appium+allure ### 一、框架目录结构说明 ![image](http://182.92.202.220:5001/uploads/big/a8349a2106c3acfa30c0d11836ebc753.png) ``` case = 编写case使用 data = case所需的数据 image = 报错截图存放 layout = 存放输入法使用layout文件 lib = 存放依赖文件及底层库的目录 logs = 存放日志使用 page = 页面对象存放目录 public = 公共方法目录 report = 测试报告目录 conftest.py = 封装pytest可调用方法,多线程方法 golVar.py = 全是driver封装 main.py = 启动入口 pytest.ini = pytest测试数据启动的配置文件 requirements.txt = 框架依赖第三方库列表 ``` 1. 依赖库列表生成 >pip3 freeze > requirements.txt 这个命令生成工程环境中的所有第三方库,一般在虚拟环境中可以这样使用比较方便。 安装命令: pip3 install freeze 2. 使用freeze生成的文件进行第三方库的安装 > pip install -r requirements.txt(我是用的是pip3 安装) 没有报错的情况下就代表安装成功,如果报错就需要替换安装源, pip install <包名> -ihttp://pypi.douban.com/simple 常见国内镜像源: http://pypi.douban.com/simple/ 豆瓣 http://mirrors.aliyun.com/pypi/simple/ 阿里 http://pypi.hustunique.com/simple/ 华中理工大学 http://pypi.sdutlinux.org/simple/ 山东理工大学 http://pypi.mirrors.ustc.edu.cn/simple/ 中国科学技术大学 ### 二、运行和封装使用 1.运行 > 1、多线程状态下,需要修改main.py 中case_pool中的case分发 > 2、修改conftest文件中MAX_POOL_NUMBER的设备数量 > 3、pycharm中直接运行main方法中的函数即可 > 4、单台设备运行注释掉多线程方法,放开pytest.main()方法 > 5、单台设备需要修改的参数在pytest.ini中,修改请参照pytest框架说明:https://www.cnblogs.com/yoyoketang/p/9550648.html 2.封装使用 >使用from找到对应的包,import对应的方法 ![image](http://182.92.202.220:5001/uploads/big/adb03f6ee71bd7857d430cf942c5d714.png) > case中引用方法即可 ![image](http://182.92.202.220:5001/uploads/big/13c6078fb72635738f1f881f77ba14dd.png) > 3.报告生成 ``` # 手动生成,进入到report目录下,执行下面命令 allure generate ../report/allure_raw -o ../report/html --clean # 自动生成 代码入口文件中已经添加修改对应路径即可 ```