【自动化测试】基础理论

ãèªå¨åæµè¯ãåºç¡ç论

 

1、什么是自动化测试

自动化测试是把以人为驱动的测试行为转化为机器执行的一种过程。通常,在设计了测试用例并通过评审之后,由测试人员根据测试用例中描述的规程一步步执行测试,得到实际结果与期望结果的比较。在此过程中,为了节省人力、时间或硬件资源,提高测试效率,便引入了自动化测试的概念。

自动化采用的是以程序测试程序,以代码代替思维,以脚本的运行代替手工测试。

自动化的测试涵盖了:功能(黑盒)自动化测试,功能(白盒)自动化测试,性能测试,压力测试,GUI测试,安全性测试等。

2、自动化测试常见的误区

-认为录制回放就是自动化测试(自动化测试的不同层次)

- 只验证界面上的信息

-让测试相关的材料自由组织,应妥善管理测试相关的文档和输出

-过早或过多的自动化

3、自动化测试的优势和劣势

1)优势

-回归测试更方便、可靠

-可应用于单调的、重复性更高的测试

-可执行一些对于手工测试来说相当困难或根本不能做到的测试

-更好地利用资源,节约时间(7*24),解放人力

-具有一致性和可重复性

-不同版本的软件之间完全复用

-使软件更有信任度

-多环境下测试

2)劣势

-永远不可能代替手工测试

-无法完全保证测试的正确性

-自动化测试几乎不能发现新缺陷

-对测试质量的依赖性极大

-测试自动化可能会制约软件开发

-自动化测试工具缺乏灵活性和创造性

-成本投入过高,风险大

-对测试人员的技术要求高,对测试工具的要求也高

4、自动化测试的原则

1)适合

-项目周期长,系统版本不断

-需求变更不频繁

-系统中的测试对象基本可以正常识别

-系统中不存在大批量的第三方控件

-需要反复测试,如可靠性测试需要进行上千次的系统测试

2)不适合

-项目周期短,需求频繁变更

-在软件还没有稳定的时候引入自动化

-没有明确的项目测试自动化计划、措施和管理

-多数对象无法识别

-脚本维护频繁和艰难

5、自动化测试实现流程

6、自动化测试构建过程

1)底层接口

- 日志规范一致

- 文档规范一致

2)自动化框架

- 数字驱动:数据驱动最适合测试业务逻辑固定不变的应用程序,只有测试数据会变化。通常测试数据会被配置在外部文件或数据库中。

-关键字驱动:关键字驱动顾名思义,它提供了一系列通用的关键字,用户通过调用这些关键字并输入一些参数可以实现单个操作,比如,打开浏览器、打开某个网页、点击某个链接等等,然后通过组织这些关键字形成一个完整的测试流程。

-混合型:混合型框架就是把数据驱动和关键字驱动整合起来,同时具备了两者的优点。与关键字框架不同的是,这种框架通常会提供一些针对于特定应用程序的关键字,比如登录、登出等。然后在完整测试流程的基础上,再应用一层数据驱动,这样就能使测试逻辑和测试数据更加灵活和可配置。

3)设计要点

-利用现有框架

-复用性

-可配置性

-状态监控

-测试报告

-测试日志

-易调试

- 易用性

- 灵活性

4)报告、日志系统

5)环境部署

6)持续集成

下面是配套资料,对于做【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!å¨è¿éæå¥å¾çæè¿°

最后: 可以在公众号:程序员小濠 ! 免费领取一份216页软件测试工程师面试宝典文档资料。以及相对应的视频学习教程免费分享!,其中包括了有基础知识、Linux必备、Shell、互联网程序原理、Mysql数据库、抓包工具专题、接口测试工具、测试进阶-Python编程、Web自动化测试、APP自动化测试、接口自动化测试、测试高级持续集成、测试架构开发测试框架、性能测试、安全测试等。

如果我的博客对你有帮助、如果你喜欢我的博客内容,请 “点赞” “评论” “收藏” 一键三连哦!喜欢软件测试的小伙伴们,可以加入我们的测试技术交流扣扣群:310357728里面有各种软件测试资源和技术讨论)

Guess you like

Origin blog.csdn.net/m0_58026506/article/details/121518081