APP测试包发布工具

npm vue2

app测试包发布管理工具

功能

  • 新增分类
  • 删除分类
  • 编辑分类
  • 查询分类
  • 新增测试包信息
  • 删除测试包信息
  • 编辑测试包信息
  • 查询测试包信息
  • 新建管理员账号、菜单权限
  • 编辑管理员账号、菜单权限
  • 扫描二维码
  • 历史记录
  • 导出数据

img

【自动生成二维码】

img

【管理员】

img

【访客】

img

操作手册

登录管理员

账号:admin
密码:123456

img

访客无需登录,仅有查看权限

新增测试包信息

img

新增分类

img

筛选分类

img

新增账号

img

历史记录

img

导出数据

img

开发环境

名称 版本
nodejs v12.13.0
vue v2.5.2

安装

1.下载Nodejs

http://nodejs.cn/download/

2.安装Nodejs

(1)检查版本

1
node -v

(2)设置淘宝镜像(提升安装速度)

1
npm config set registry http://registry.npm.taobao.org/

如果你已安装Nodejs环境,可跳过1和2步骤

3.安装与使用

(1)服务端

① 打开终端窗口,进入目录/appTestPackageManager/server下

1
cd /appTestPackageManager/server

② 执行安装

1
cnpm install

③启动后端

1
nodemon server

img

(2)前端

①再次打开新的cmd终端窗口,进入目录/appTestPackageManager下,执行命令行如下命令:

1
cd /appTestPackageManager

②安装

  • 安装cnpm

    1
    npm install -g cnpm --registry=https://registry.npm.taobao.org
  • 安装node-sass

    1
    cnpm install node-sass --save
  • 安装

    1
    cnpm install

③启动前端

1
npm run dev

img

(3)浏览器地址访问

http://localhost:8088

(4)查看你本地IP地址,把localhost替换成你的ip地址(http://IP:8088),发给其他测试小伙伴,他们就能在自己电脑上访问;另外一种办法是将根目录下/dist/static/index.html放入tomcat供外网其他人员使用

TODO 开发中

  • 1.H5页面
  • 2.后端自动根据测试包,放入不同文件夹中(iOS、Andorid)
  • 3.iOS plist地址生成

产品原型压缩包管理工具

公众号链接

一、工具用途

通过一个url地址就能查看产品原型文档,无需下载、解压、维护等一系列操作。
二、工具诞生背景

产品经理发布原型压缩包文件,一般通过QQ、钉钉、邮件发送出来,有的产品则是通过上传到外链平台,但容易造成公司需求设计方案外泄。
另一个问题,如果遇到产品经理经常更新原型压缩包,那么开发、测试小伙伴就要同步去下载同步,本地打开wiki、下载、解压等一系列操作。

PrototypeManager

npm vue2

产品原型压缩包管理

img

recommend: China-GiteeOther-Github

功能

  • 新建分类
  • 删除分类
  • 编辑分类
  • 查询分类
  • 新建原型版本
  • 删除原型版本
  • 编辑原型版本
  • 查询原型版本
  • 新建管理员账号、菜单权限
  • 编辑管理员账号、菜单权限
  • 导出数据

img

【管理员】

img

【访客】

img

开发环境

名称 版本
nodejs v12.13.0
vue v2.5.2

安装

1.下载Nodejs

https://npm.taobao.org/mirrors/node/v0.12.13/

(建议版本使用v12.13.0 小于v15.0)

2.安装Nodejs

(1)检查版本

1
node -v

(2)设置淘宝镜像(提升安装速度)

1
npm config set registry http://registry.npm.taobao.org/

如果你已安装Nodejs环境,可跳过1和2步骤

3.安装与使用

  • 克隆工程
1
git clone git@github.com:Musule/PrototypeManager.git

(1)启动服务端

① 打开cmd终端窗口,进入目录/PrototypeManager/server下(window 不要用 powser shell)

1
cd /PrototypeManager/server

② 执行安装命令

  • 安装cnpm

    1
    npm install -g cnpm --registry=https://registry.npm.taobao.org
  • 安装所有依赖库

1
cnpm install

③启动后端服务

1
node server

img

(2)启动前端

①再次打开新的cmd终端窗口,进入目录/PrototypeManager下,执行命令行如下命令:

1
cd /PrototypeManager

②安装

  • 安装node-sass

    1
    cnpm install node-sass --save
  • 安装所有依赖库

1
cnpm install

③启动前端

1
npm run dev

img

(3)浏览器地址访问

http://localhost:8088

你也可以直接访问工程底下根目录dist文件夹,打开index.html

操作手册

登录管理员

账号:admin
密码:123456

img

访客无需登录,仅有查看权限

修改每个账号的密码,可以通过PrototypeManager\server\public\User.json

新增原型版本

img

新建分类

img

筛选分类

img

新建账号

img

导出数据

img

注意事项

  • 1.产品原型压缩包,暂不支持文件夹嵌套压缩。

例如: 压缩包.zip 解压后根目录就是原型文件内容,而不是还有一层文件夹进去才是原型文件内容。

  • 2.压缩包名称和解压后文件夹名称要一致。

TODO 开发中

  • 1.支持rar、tar
  • 2.多层级解压

测试模拟证件图片生成器

背景

由于在某个需求迭代中,业务要求对司机人员进行审核身份证、驾驶证信息,且审核对接第三方接口,造成测试环境必须使用真实身份证信息。
测试人员一开始用自己身份证,再而用家人身份证信息进行测试,但始终不够用。

由此我花了两天时间,做了一个用于软件研发期间,测试环境使用身份证图片信息生成工具。

身份证号码哪里来呢?通过通缉犯、或百度网上找的信息来模拟构造测试数据,借助此工具生成身份证图片信息来解决测试过程中的痛点。

效果

身份证证件生成器

PC端

img

img

img

img

驾驶证证证件生成器

img

img

img

移动端

img

img

img

声明

此工具仅用于软件研发期间测试软件系统业务,并不用于真实生产环境,也不会对社会造成危害或违反法律法规。
避免被不法分子使用,因此不进行开源分享。

加入新公司如何快速梳理业务知识地图?

背景

项目中,无论是开发、测试、产品、项目经理,熟悉业务知识并定期回顾,是每个人在项目团队存在的根基。

作为测试工程师,业务知识能力应该要比产品经理还更了解,无论后期测试转岗”产品经理”、”开发”、”项目经理”都是很有帮助!

分享下这几年来,我梳理业务知识的骨架,能够帮助职业生涯迷茫徘徊中的你。。。

为什么要梳理业务知识地图?

1.梳理业务知识重要性:
(1)作为业务知识库,用于查阅回顾 。
(2)回归测试,评估影响范围。
(2)新同事加入,熟悉业务资料。

2.维护成本
(1)每次迭代版本发布后,需将变更内容同步到xmind。
(2)多人协作,保证文档正确性。

具体示例

img

业务知识地图框架

img

img

每个页面模块含:数据来源、数据状态扭转、功能描述(查询、新增、修改、删除、列表及分页)

由于涉及公司核心业务就不在细化展开截图,仅分享下梳理大致骨架。

img

备注:xmind可以附上截图、gif、wiki链接等信息,相比excel更加直观。

如何设计测试用例?

高品质测试用例设计模板框架,能发头脑风暴、补全各种测试场景、能避免出现漏测情况。
做了七八年测试岗位,分享下自己设计模板,已在实践中使用多年并得到推广。

用例框架

用例类型

UI检查(核对与原型文档要求是否一致,交互、表单控件等)

字段校验(列表字段、表单字段规则)

功能校验(单功能 新增、修改、删除、查询)

流程校验(功能之间数据扭转)

功能权限(菜单权限)

数据权限(账号角色展示不同数据)

历史数据(新旧数据兼容性)

影响范围(不再本次需求迭代中,但可能受到影响的功能)

示例

img

用例因素

TestSuite > TestCase

TestCase:优先级、用例类型、前置条件、用例标题、执行步骤、期望结果、实际结果

优先级重要性:用例优先级,决定哪些用例优先执行(在有限时间内),冒烟流程用例1级,不会出现测试半天才发现流程走不通,导致其他模块用例无法执行!

流程图、状态扭转图,每个分支流程都是一个用例场景,前提是要求产品在设计需求时,必须产出这两种图,以便于用例场景覆盖。
产品可先梳理出雏形版本,需求评审在一起讨论补全流程。

流程图

img

状态扭转图

img

这两种图最直观,能够快速帮助分析本次需求影响范围、历史数据处理,避免上线之后出现用例覆盖补全、旧数据兼容性的bug

产品验收用例

img

测试工程师,必备图片测试工具

image-test-tools

测试工程师,必备图片测试工具

测试图片上传功能,特别是销售系统、新零售系统等等,经常需要用到各种格式图片尺寸,但测试人员需要花大量时间来准备测试数据寻找图片、修改尺寸,为此有了这个工具,通过下面指导操作生成需要的测试图片。

image-test-tools 下载地址

一、优点

  • 简单易上手
  • 开源免费
  • 详细使用文档
  • 提高测试效率

二、功能

  • 批量重命名图片
  • 批量下载图片
  • 修改图片大小
  • 生成不同格式图片
  • 图片打水印

四、环境

1.nodejs

如果你电脑还未安装配置nodejs环境,请参考:https://www.runoob.com/nodejs/nodejs-install-setup.html

如果已安装配置nodejs,可跳过此步骤

2.安装

1
npm install

五、使用

1.批量重命名图片

(1)被重名的图片,放在image文件夹中

image-test-tools/Rename/image

img

(2)命令行输入

① 使用默认

1
node Rename/rename
  • 如下图所示

img

② 使用指定文件名和格式

1
node Rename/rename -n 图片 -p image -f jpg
  • 如下图所示

img

重命名成功后,图片所存放的位置

image-test-tools/Rename/image

(3)获取参数说明

命令行输入

1
node Rename/rename -h

  • 如下图所示

img

名称 是否必填 类型 描述 默认值
-n 可选 String 批量命名图片的名称 图片
-f 可选 String 批量命名图片的格式 jpg
-p 可选 String 批量命名图片的错放位置 image文件夹中

2.批量下载图片

(1)把要下载的图片链接地址、命名名称,写入index.html文件中

image-test-tools/ImageDownload/index.html

  • 如下图所示

img

(2)命令行输入

1
node ImageDownload/download
  • 如下图所示

img

下载成功后,图片所存放的位置

image-test-tools/ImageDownload/image

  • 如下图所示

img

(3)获取参数说明

命令行输入

1
node ImageDownload/download -h

  • 如下图所示

img

名称 是否必填 类型 描述 默认值
-p 可选 String 下载后图片文件存放位置 image文件夹中

3.修改图片大小

(1)命令行输入

1
node Resize/resize -i "Resize/image/resize.jpg" -w 1000 -e 2000

img

修改成功后,图片所存放的位置

image-test-tools/Resize/output

img

(2)被修改的图片,放在image文件夹中,你也可以替换成自己的图片

image-test-tools/Resize/image

  • 如下图所示

img

(3)获取参数说明

命令行输入

1
node Resize/resize -h

  • 如下图所示

img

名称 是否必填 类型 描述 默认值
-i 可选 String 被修改后,图片位置 “Resize/image/resize.jpg”
-w 可选 int 被修改后,图片的宽度 200
-e 可选 int 被修改后,图片的高度 200
-o 可选 String 被修改后,图片保存位置 “Resize/output/resize.jpg”

4.生成不同格式图片

图片格式:jpg、jpeg、png、bmp、gif、webp、tiff、svg等

(1)命令行输入

指定格式,大小默认

1
node Made/made -f png
  • 如下图所示

img

指定格式+图片大小

1
node Made/made -f webp -w 100 -e 200
  • 如下图所示

img

(3)获取参数说明

命令行输入

1
node Made/made -h

  • 如下图所示

img

名称 是否必填 类型 描述 默认值
-f 可选 String 生成图片,指定格式 webp
-w 可选 int 指定图片宽度 200
-e 可选 int 指定图片高度 200
-i 可选 String 生成指定格式原始图片,存放位置 Made/image/format.jpg
-o 可选 String 生成的图片存放位置 Made/output/format

生成成功后,图片所存放的位置

image-test-tools/Made/output

img

5.图片打水印

(1)命令行输入

使用默认水印字体属性

1
node WaterMake/watermake -t 哈哈哈

  • 如下图所示

img

指定水印字体属性

1
node WaterMake/watermake -b "WaterMake/image/watermake.jpg" -s 50 -t '我是水印' -c 'yellow' -l 100 -o 100 -p "WaterMake/output/watermarked.png"
  • 文字水印,如下图所示

img

1
node WaterMake/watermake -b "WaterMake/image/watermake.jpg" -s 200 -t '1' -c 'red' -l 200 -o 100 -p "WaterMake/output/watermarked.png"
  • 数字水印,如下图所示

img

1
node WaterMake/watermake -b "WaterMake/image/watermake.jpg" -s 200 -t '2' -c 'red' -l 200 -o 100 -p "WaterMake/output/watermarked.png"
  • 数字水印,如下图所示

img

生成成功后,图片所存放的位置

image-test-tools/WaterMake/output/watermarked.png

  • 如下图所示

img

(3)获取参数说明

1
node WaterMake/watermake -h
  • 如下图所示

img

名称 是否必填 类型 描述 默认值
-b 必填 String 原图路径 “WaterMake/image/watermake.jpg”
-s 必填 int 字体大小 50
-t 必填 String 水印内容 我是水印
-c 必填 String 字体颜色 yellow
-l 必填 int 横坐标位置(像素) 100
-o 必填 int 纵坐标位置(像素) 100
-p 必填 String 打完水印后,图片存放位置 “WaterMake/output/watermarked.jpg”

网址导航工具

Navigation

npm vue2

导航网址

最近各业务线频繁更换测试环境地址,造成各自业务线不知道最新测试环境、预生产环境地址,新加入开发、产品小伙伴不知道有哪些产品线,项目进展不顺畅。

萌生做一个网址管理工具,让各个业务线负责人,负责管理更新自己测试环境地址、账号、密码,这就诞生了Navigation.

Navigation 下载地址

功能

  • 新增分类
  • 删除分类
  • 编辑分类
  • 查询分类
  • 新增网址
  • 删除网址
  • 编辑网址
  • 查询网址
  • 新建管理员账号、菜单权限
  • 编辑管理员账号、菜单权限
  • 导出xls

【管理员】

img

【访客】

img

开发环境

名称 版本
nodejs 8.11.4
vue 2.X

安装

1.下载Nodejs

http://nodejs.cn/download/

2.安装Nodejs

(1)检查版本

1
node -v

(2)设置淘宝镜像(提升安装速度)

1
npm config set registry http://registry.npm.taobao.org/

如果你已安装Nodejs环境,可跳过1和2步骤

3.安装与使用

(1)服务端

① 打开终端窗口,进入目录/Navigation/server下

1
cd /Navigation/server

② 执行安装

1
npm install

③启动后端

1
node server

img

(2)前端

第一种:你可以直接打开目录下/dist/index.html直接使用,或者将dist放入tomcat的webapp中实现web服务器让其他小伙伴也能通过ip地址访问

第二种:你可以启动开发模式,步骤如下所示。

①再次打开新的终端窗口,进入目录/Navigation下,执行命令行如下命令:

1
cd /Navigation

②安装

  • 安装cnpm

    1
    npm install -g cnpm --registry=https://registry.npm.taobao.org
  • 安装node-sass

    1
    cnpm install node-sass --save
  • 安装

    1
    npm install

③启动前端

1
npm run dev

img

(3)浏览器地址访问

http://localhost:8088

(4)建议,使用另外一种办法是将根目录下/dist整个文件夹放入tomcat中供外网其他人员使用

操作手册

登录管理员

账号:admin
密码:123456

img

访客无需登录,仅有查看权限

新增网页

img

新增分类

img

筛选分类

img

新增账号

img

导出数据

img

修复记录

  • 2020-07-12 修复node-sass版本4.11.0因版本过低导致的报错

【atxserver2】移动设备管理平台搭建

移动设备管理平台

atx-server2 是一款开源移动设备集群管理平台,支持Android和iOS。

将移动设备统一通过浏览器页面进行管理操作、日志导出、adb命令等操作。

img

整体架构

img

环境

工具 版本
CentOS 7.X
Python3 3.7.4
Docker 17.03.1-ce-rc1, build 3476dbf
rethinkdb 2.3.6 (CLANG 10.0.0 (clang-1000.10.43.1))
nodejs 8.11.4
phpMyAdmin 5.0.2

docker

安装

最快捷的方式脚本一键安装,国内设置镜像为Aliyun

1
curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun

使用yum安装

1
yum install docker

启动

启动docker

1
service docker start

开机启动

设置开机启动

1
chkconfig docker on

CentOS 7中支持的新式 systemd 语法,如下:

1
systemctl  start docker.service

rethinkdb

安装

1
2
sudo wget https://download.rethinkdb.com/centos/7/`uname -m`/rethinkdb.repo \
-O /etc/yum.repos.d/rethinkdb.repo
1
sudo yum install rethinkdb

nodejs

安装

https://www.runoob.com/nodejs/nodejs-install-setup.html

Android设备接入

1
https://github.com/openatx/atxserver2-android-provider

iOS设备接入

1
https://github.com/openatx/atxserver2-ios-provider

启动atx-server2

1
docker-compose up

启动设备接入

1
2
python3 -m venv venv
. venv/bin/activate
1
python3 main.py --server localhost:4000

功能

系统内置功能

img

支持Android、iOS 命令行操作

img

img

img

支持多设备远程操作(日志导出等等)

img

支持截屏

img

应用管理(安装、卸载应用)

img

img

文件管理

img

测试用例管理系统Testlink搭建

测试用例重要性

测试用例是一个测试质量体系根基,直接影响bug覆盖是否全面,测试人员需要在短时间内效率工作。

从用例编写、执行、修改、筛选、复用,这些都是测试每期迭代中核心内容,但付出与效果有时很难成正比,这就要求把测试精力放在思考发散写用例,而不是在维护、修改等文档操作上面。

用例工具千千万,像是word、excel、xmind、禅道、teambition、bugfree、testlink等等

唯独testlink能解决这些痛点,帮助快速编写、执行、修改、筛选、复用、测试报告、自动化测试对接

总结下最近搭建testlink过程和踩坑

img

环境搭建

工具 版本
Linux centOS 7.6
TestLink 1.9.20
Apache 2.4.43
MySQL 8.0.18
PHP 7.3.16
phpMyAdmin 5.0.2

安装Mysql

1.查看服务器是否已安装过mysql

1
2
yum list installed mysql*
rpm -qa | grep mysql*

2.查看安装包信息

1
yum list mysql*

3.安装mysql客户端

1
yum install mysql

4.安装mysql服务器端

1
2
yum install mysql-server
yum install mysql-devel

5.启动mysql服务

1
service mysqld start

安装Apache httpd

1.执行安装命令

1
yum install httpd

2.执行启动httpd服务

1
service httpd start

php

testlink后端api使用php语言开发,因此php也是必须安装配置的环节

1.查看php版本信息

1
yum list php* |grep php-devel

2.安装php

1
yum install php

3.重启apache

1
service httpd restart

4.测试php信息

在/var/www/html/下新建一个phpinfo.phpvim

1
/var/www/html/phpinfo.php

内容写入

1
<?php phpinfo();?>

img

5.地址访问

1
localhost:8088/info.php

下载地址:https://github.com/TestLinkOpenSourceTRMS/testlink-code/releases

1
wget https://github.com/TestLinkOpenSourceTRMS/testlink-code/archive/1.9.20.tar.gz

2.解压

1
2
cd /usr/local
mv 1.9.20.tar.gz testlink-1.9.20.tar.gz

4.重启httpd

1
service httpd restart

5.testlink初始化配置

安装向导
img

设置数据库账号密码
img

img

账号密码在初始化配置时设置
img

用例筛选

img

用例执行

img

更多testlink功能详见 https://baike.baidu.com/item/Testlink/2040576?fr=aladdin