首页 > 代码库 > 自动化测试(一):自动化测试理论
自动化测试(一):自动化测试理论
什么是自动化测试:
自动化测试是把以人为驱动的测试行为转化为机器执行的一种过程。通常,在设计了测试用例并通过评审之后,由测试人员根据测试用例中描述的规程一步步执行测试,得到实际结果与期望结果的比较。在此过程中,为了节省人力、时间或硬件资源,提高测试效率,便引入了自动化测试的概念。
自动化测试常见的误区:
1.认为录制回放就是自动化测试(自动化测试的不同层次)
2.只验证界面上的信息
3.让测试相关的材料自由组织,应妥善管理测试相关的文档和输出
4.过早或过多的自动化
自动化测试的优势和劣势
优势:
1.回归测试更方便、可靠
2.可应用于单调的、重复性更高的测试
3.可执行一些对于手工测试来说相当困难或根本不能做到的测试
4.更好地利用资源,节约时间(7*24),解放人力
5.具有一致性和可重复性
6.不同版本的软件之间完全复用
7.使软件更有信任度
8.多环境下测试
劣势:
1.永远不可能代替手工测试
2.无法完全保证测试的正确性
3.自动化测试几乎不能发现新缺陷
4.对测试质量的依赖性极大
5.测试自动化可能会制约软件开发
6.自动化测试工具缺乏灵活性和创造性
7.成本投入过高,风险大
8.对测试人员的技术要求高,对测试工具的要求也高
自动化测试的原则
适合使用自动化的时候:
1.项目周期长,系统版本不断
2.需求变更不频繁
3.系统中的测试对象基本可以正常识别
4.系统中不存在大批量的第三方控件
5.需要反复测试,如可靠性测试需要进行上千次的系统测试
不适合使用自动化测试的时候:
1.项目周期短,需求频繁变更
2.在软件还没有稳定的时候引入自动化
3.没有明确的项目测试自动化计划、措施和管理
4.领导不支持
5.多数对象无法识别
6.脚本维护频繁和艰难
常见的GUI自动化测试工具:Winrunner QTP Selenium Robot Framework Rational Functional Tester Silktest Sikuli
自动化测试工具选型的两大要点:1.对象和管理 2.对象操作
自动化测试的过程:
自动化测试的人员组成:测试组长、高级测试开发工程师、自动化测试用例设计人员、脚本开发人员、项目库管理人员
自动化测试用例设计5大原则:
1.自动化测试用例的范围往往是核心业务流程或者重复执行率较高的
2.自动化测试用例一般以“正向”为主
3.不是所有的手工测试用例都可以使用自动化来实现
4.手工测试用例不用回归原点,而自动化测试用例则必须回归原点,以此来保证用例的独立性
5.自动化测试用例必须设计合理的操作顺序及验证点
识别对象
1.正确:有且只有一个TO对象的强制识别属性和RO完全匹配
2.错误:① 0个,报找不到对象<不匹配> ② 多个,有多个TO的强制识别属性和RO完全一致
自动化测试(一):自动化测试理论