#转档参数设置帮助
##一、背景 ‘KdanAuto’作为用于(半)自动化转档测试工具,用于降低重复的、需要占用大量QA 人力的工作量的工具,其App 自身的开发时间投入,也是需要纳入重点考虑。
基于未来转档、DocumentAI SDK 将会长期投入开发,相关控制参数定会持续增加, 用于同步测试的 KdanAuto 必然需要能够同步支持所新增的参数;同时 QA 用于测试的用例也必然会是随着需求增加而不断增长,相应测试项需要有更灵活的设置方式。
因此,设计了该套 【SDK新增参数 -》更新控制规则 -》App 启动加载自动配置】 控制规则,如下图:
图 1.1.1 KdanAuto 参数规则控制流程
##二、参数控制规则文档效果及样式 注:该文档以转档 SDK1.7.0版本参数参考拟定
###1、JPEG/PNG 格式
参数规则配置详情
<key>JPEG</key>
<dict>
<key>Classs</key>
<array>
<dict>
<key>Name</key>
<string>快照对照测试</string>
<key>Class</key>
<string>AutoTest</string>
</dict>
</array>
<key>Extention</key>
<string>jpg</string>
<key>Params</key>
<array>
<dict>
<key>ValueType</key>
<string>int</string>
<key>Property</key>
<string>imageDpi</string>
<key>Name</key>
<string>Image DPI</string>
<key>DefaultValue</key>
<integer>216</integer>
</dict>
<dict>
<key>ValueType</key>
<string>BOOL</string>
<key>Property</key>
<string>isContainAnnotations</string>
<key>Name</key>
<string>Contain Annotations</string>
<key>DefaultValue</key>
<false/>
</dict>
</array>
</dict>
###2、CSV 格式
参数规则配置详情
<key>CSV</key>
<dict>
<key>Classs</key>
<array>
<dict>
<key>Name</key>
<string>快照对照测试</string>
<key>Class</key>
<string>AutoTest</string>
</dict>
</array>
<key>Extention</key>
<string>csv</string>
<key>Params</key>
<array>
<dict>
<key>ValueType</key>
<string>BOOL</string>
<key>Property</key>
<string>isMergeCSV</string>
<key>Name</key>
<string>Merge CSV</string>
<key>DefaultValue</key>
<false/>
</dict>
</array>
</dict>
###3、TXT 格式
###4、HTML 格式
###5、Excel 格式
###6、PPT 格式
###7、Word 格式
###8、RTF 格式
###9、PDF 格式 注:PDF -> PDF : PDF 文档对照测试,实际内部用到的转档为 PDF 转 JPEG格式,然后进行的 JPEG 图片对照
##三、参数设置规则
作用于具体文档的具体测试类型,目前有支持的测试类型有:AutoTest(全类型文档,自动转档及快照对照测试)、PDFCompareTest(PDF 文档,逐页快照对比测试)、StringAutoTest(TXT/RTF 文档,自动转档及字符对比测试)、StringAutoCompare(TXT/RTF 文档,字符对比测试)
#####-【AutoTest】
用途:用于自动化转档到各种类型文档,再进行快照(JPEG 格式),然后将(新旧)快照(JPEG 格式)进行逐个相素对比
支持格式:支持全类型格式,PDF、RTF、WORD、PPT、Excel、CSV、HTML、TXT、JPEG、PNG、GIF、TIFF、TGA、BMP、JPEG2000
#####- 【PDFCompareTest】
用途:用于对 PDF 文档,进行逐页快照对比测试;例如,在 Windows 端用命令行工具批量执行出来的结果文档,用该工具进行对照确认
支持格式:PDF
#####- 【StringAutoTest】
用途:用于自动化转档到字符化文档(如 TXT、RTF),再将结果文档与初始字符文档进行字符对照测试
支持格式:RTF、TXT
#####- 【StringAutoCompare】
用途:用于自动化对比字符化文档(如 TXT、RTF)的结果文档和对照文档,例如在 Windows 端做 OCR 识别,然后在 Mac 端进行结果对比
支持格式:RTF、TXT
####Class 参数设置
#####- 示例一
//例如 Word 文档进行设置,支持做 【快照对照】
<key>Classs</key>
<array>
<dict>
<key>Name</key>
<string>快照对照测试</string>
<key>Class</key>
<string>AutoTest</string>
</dict>
</array>
图 3.1.1 Word 格式 Classs 参数设置效果示意图
#####- 示例二
//RTF 文档支持【转档快照对照】、【转档对比测试】、【字符对比操作】
<key>Classs</key>
<array>
<dict>
<key>Name</key>
<string>快照对照测试</string>
<key>Class</key>
<string>AutoTest</string>
</dict>
<dict>
<key>Name</key>
<string>字符对照测试</string>
<key>Class</key>
<string>StringAutoTest</string>
</dict>
<dict>
<key>Name</key>
<string>跨平台字符对比测试</string>
<key>Class</key>
<string>StringAutoCompare</string>
</dict>
</array>
图 3.1.2 RTF 格式 Classs 参数设置效果示意图
对应文档类型(转档后)对照(/对比)测试的文档后缀名称,每种格式对应指定一种后缀格式名称,字符串属性值
用于控制转档成各种文档过程中的转档控制参数,支持参数种类有 *BOOL*、*Bool*、*bool*、*size_t*、*int*、*uint8_t*、*int8_t*、*int16_t*、*uint16_t*、*int32_t*、*uint32_t*、*int64_t*、*uint64_t*、*NSInteger*、*NSUInteger*、*float*、*double*、*CGRect*、*NSRect*、*CGSize*、*NSSize*、*NSString*以及枚举值
####1、各