如何做自动化测试

之前写了一些软件测试工程师职业发展和如何进行自动化学习的文章,以及普及了一下关于如何做性能测试的知识。而对于自动化测试之前没有进行过梳理。很多学生咨询我应该选择学习python还是java? 工具是学习selenium还是QT? 这里我想阐述一个概念,自动化是一个体系而不是一门工具或者一门语言。如果一个项目需要达到100%的自动化是需要多个工具甚至是多门语言配合才能达到的。接下来以一个web自动化的项目为例,如果需要达到完全的自动化,需要一下几门工具:
1. Java
2. TestNG
3. Selenium (web自动化工具)
4. Jenkins
5. SVN

Java + TestNG + Selenium: 实现自动化的测试用例,如一个自动化的机器手替代人工进行测试工作
SVN: 用于自动化测试代码的管理,若是一个庞大的自动化测试项目,需要多人同时进行开发。使用SVN能够很好的维护代码的一致性。
Jenkins: 有了自动化测试的机器手只能说自动化了50%。何时启动测试?如何展示测试报告?如何通知大家测试已经完成?这些都需要持续集成工作Jenkins来完成。Jenkins实际上是一个任务调度系统+报表展示系统+邮件通知系统,结合Jenkins就可以100%实现自动化,每天员工甚至在手机上就可以查看测试结果,完全不用人工干预。

持续集成:
如何做自动化测试_第1张图片

  1. 测试人员编写测试代码:Java+Selenium+TestNG (TestNG是一个自动化测试框架,用来管理测试用例如何执行,执行多少次等)
  2. 测试代码编写好后,统一Check-in至SVN源代码服务器(SVN主要用于管理源代码,开发用的比较多)
  3. Jenkins自动化定时任务,比如:每天晚上12点启动测试:
    a. 拉取最新的测试代码
    b. 测试代码编译
    c. 测试代码执行
    d. 测试结果发布
    e. 邮件系统自动发送测试报告

以上才算是一个完整的测试化项目。作为一个合格的自动化测试人员,不仅能使用自动化编程语言+自动化测试工具,还需要知道如何搭建一套自动化的测试体系。

你可能感兴趣的:(软件测试)