一个具有一定规模的网络服务在新版本的上线前,一定会进行详细的 QA 测试,但目前的测试工具大多是以代码的测试为主,只有少数的工具能够支持 UI 上的测试,而 SIKULI 便是自动化 UI 测试的好帮手。
为什么我们需要自动化测试?
曾经开发过网志或者是软件的朋友都会知道,在软件正式发布之前进行测试是相当重要的,除了要避免软件出现错误当机的状况之外,也须要确定各项操作流程是否如同预期。
然而,许多网络创业者在初期的产品开发过程中往往没有办法进行详尽的测试,这可能是因为资源的有限(没有钱雇请专门的 QA 测试人员),或者是时间上有限(产品马上就要发布)。
因为前期的测试不够周全,往往我们在后续发生错误时可能会需要花费掉更多的时间和成本来修复,可以说是因小失大。
所以透过自动化的测试工具,可以达成许多优点:
有效减低测试成本,只要当初期的测试脚本撰写完毕后便可以自动运行
确保大多数测试都可以自动运行并且重制可能的错误
因为自动化测试是由电脑进行实作,所以人员下班后仍旧可以测试,隔天早上再观看结果即可
然而,自动化测试碍于技术的发展,目前大多数只能进行代码的测试,但针对 UI 接口的操作测试往往才是大多数人关注的重点。
SIKULI
SIKULI 是在 2010 年初的时候由 MIT CSAIL 实验室所发布的开放原代码项目,标榜透过图片的辨识来进行自动化的 UI 测试,底层是透过 Java 和 Python 所