上QQ阅读APP看书,第一时间看更新
1.1.2 自动化测试
自动化测试(automated testing)是利用计算机程序检查软件是否运行正常的测试方法。换句话说,就是用其他额外的代码检查被测软件的代码。当测试代码编写完之后,就可以不费吹灰之力地进行无数次重复测试。
可使用许多种不同的方法来编写自动化测试脚本。可以编写通过浏览器自动执行的程序,可以直接调用源代码里的函数,也可以直接对比程序渲染之后的截图。虽然每一种方法的优势各不相同,但它们有一大共同点:相比手动测试而言节省了大量时间。
在前面的部分,谈到了我经手的一个未进行自动化测试的应用程序,该程序带来的烦扰是:在每次新版本上线之前,都要进行长达四个小时的手动测试。在我加入这个团队后不久,技术总监决定采用自动化测试方法来解决这个问题。久而久之,我们在测试上投入的时间从手动测试的四个小时降低到自动化测试的二十分钟。
自从经历过这件事后,我总是从一开始就为大型项目编写自动化测试。驯服一匹从生下来就和人类生活在一起的马可比驯服一匹囚禁起来的野马容易多了。本书中,读者将学会如何通过编写良好的测试代码来创建一个易管理的应用程序。
自动化测试在检查应用程序是否仍正常工作方面很有用,它们也使得检验应用程序代码变更变得更加容易。现在,让我们看一下实际应用中自动化测试的例子——测试GitHub的拉取请求(pull request)。