首页 > 代码库 > 自动化测试小结
自动化测试小结
最近差不多一年从事自动化的测试工作,从开始对自动化一点都不了解到现在能从实现用例、手动命令行执行用例、自制工具来执行用例,感觉进步还是有的。
自动化测试对于手动测试应该是有不小的优势的,虽然在自动化的用例实现中刚开始的时候会显得很麻烦,但是它是一个一劳永逸的工作,尤其是版本变 更或者是有些用例需要重复执行的时候,这个优点会显得极其明显,它能够极大的节约人力成本和时间成本。而且,感觉人工测试有时候会或多或少的出现错误,而 自动化测试会极大的降低这些错误。虽然如此,但是自动化测试也有一些缺性,比如需要维护,而且如果软件不稳定,测试的用例经常的修改,则会花费大量的时间 在修改代码上面。而且自动化测试不能去测试一些直观的特性比如整体美观效果、声音等等。
在自动化测试的工作中也遇到过很多的问题:
1. 工作中大部分的时间都是在实现用例,这一部分遇到的问题主要可以分为2个,一个是如何查找和定位页面元素,这一问题我会通过Cucumber学习笔记来进 行描述。另一个是环境问题,环境问题主要是由于环境中浏览器会自动的升级而导致旧的web-driver没有及时的更新,从而导致用例不能正常的执行。记 得的环境问题主要有打开了浏览器后不能正常的跳转到测试页面,一些元素不能用初始的方法找到,Api发生了变化。这个问题可以通过降级浏览器,或者升级 web-driver来进行解决,如果升级了web-driver之后发现有使用的方法发生了变化,则修改相应的方法即可。
2. 在工作中遇到的第二个问题是手工命令行执行用例不能满足要求。在刚开始进行自动化工作的时候,也是这个项目刚开始的时候,项目中基本没有实现的用例,工作 中要求每天需要执行实现的用例,那个时候,由于实现的用例十分的少,即使每天使用命令行来进行执行实现的用例,也还算十分的轻松。后来,随着用例的增加, 手动的执行已经急剧的印象到我其他工作的进行,重复而且繁琐的手动执行那些用例十分的痛苦也感觉非常的Low。于是就想,自己是否可以做一个简单的程序来 进行这项重复而且繁琐工作呢?经过几天业余的时间,于是自动化执行脚本V1.0就诞生了,这个版本是个winform版本,主要是可以选择用例,然后可以 一键执行选择的用例,并且生成html版本的测试用例报告。现在看来,这个版本虽然极其的简陋,但是却也很开心,毕竟减少了我大量的工作,而且在白天的上 班时间也不用去执行那些用例,每天下班离开的时候,选择所需要执行的用例并且运行起来,第二天早上过来查看结果并且发送报告,还算也小有成就。再后来,用 例继续的增加,由于在项目中每一个用例都会生成一个报告,查看报告也会占用大量的时间,而且大家也基本只会查看那些有问题的报告。v2.0版本也在这个时 候诞生了,这个版本依旧是个winform的小程序,它除了拥有第一个版本的特性之外,还会对生成的报告来进行分析,将有问题的用例和一些失败的信息提取 出来,然后我只用去关注这些有问题的用例然后发送对应的报告即可。再后来,用例依旧增加,所有的用例在单个的机器上面一个晚上已经不能执行完毕,而且每天 发送测试报告也十分的繁琐。于是这个时候,V3.0版本也应运而生了。V3.0版本有原来的winform版本改为了web版,是用asp.net mvc5做的,在这个版本中主要解决了用例执行分配到不同的机器、直观的在web上面查看所有的用例执行结果、能确保每次的执行是最新的代码、可以进行制 定相应的执行计划。由于bug的存在,这个版本也改过了许多次,但是至今也仍然在使用。这个系统我会在之后的文章中进行分享的。
今天的文章就写到这里了。