微信读书排版引擎自动化测试方案(6)
发表于:2017-03-10来源:WeRead团队博客作者:WeRead点击数:
标签:微信
自动化测试流程 下面,将介绍我们完整的排版引擎自动化测试流程。 1 生成排版结果 首先,用户需要确定参数:待生成排版结果的 svn 版本范围 r1~rn 、书
自动化测试流程
下面,将介绍我们完整的排版引擎自动化测试流程。
1 生成排版结果
首先,用户需要确定参数:待生成排版结果的 svn 版本范围 r1~rn
、书单、阅读偏好设置(字体、缩进、主题模式)。把这些参数传给脚本batch_scan.py
,然后自动化流程开始,脚本会执行以下步骤:
-
在指定 svn 版本范围内,找出排版引擎有变更的版本,checkout
-
对每个 checkout 的版本,用 xcodebuild 编译项目,安装到模拟器
-
通过 Instrument 的 UI Automation 脚本,打开模拟器,运行微信读书App,进入到测试彩蛋页面:
执行 scheme
,生成排版结果
-
把结果从模拟器移动到指定的目录下
2 生成排版结果差异
得到排版结果后,执行脚本 batch_diff.py
,对相近的版本,每本书的每一页通过 diffimg.py
对比,如果有差异,则输出可视化的差异结果。
3 人工检查差异
原文转自:http://wereadteam.github.io/2016/08/23/Typesetter/