Chap01自动化测试基础准备

1,分层自动化测试思想:

  如图所示。其中,UI代表页面级系统测试,Service代表模块间的接口测试,Unit代表单元测试。金字塔越高,表示需要投入的精力和工作量越大。

                    

1.1 单元测试自动化:

   通常单元测试需要借助单元测试框架来开展,如在Java开发中熟知的JUnit和TestNG,在PHP开发中熟知的PHPUnit,以及在Python开发中熟知的Unittest和Pytest等,一般该环节由开发人员自己来完成。Code Review即代码评审或代码走查,目的是查找软件系统潜在的缺陷,保证软件产品质量及提高开发编码的能力。有很多Code Review相关工具,在此就不一一列举了。作者使用Java语言进行编码测试,所以推荐采用比较流行的Jenkins+Git-Lab+SonarQube进行自动化测试和代码质量检测。

1.2 接口测试自动化:

  接口测试分为两大类:内部接口测试和外部接口测试。

  (1)内部接口测试,外部无法访问,是程序内部的接口,重点在于模块、方法之间的交互和调用,并对返回结果进行验证。

  (2)外部接口测试,又分为WebService接口和API接口。 (对于外部接口,我们可以通过对应的测试工具进行调用和测试,比如JMeter、Postman、SoupUI、LoadRunner等。)

     • WebService接口:符合SOAP协议并通过HTTP传输,入参和响应信息都采用XML格式。   

    •  API接口:符合HTTP协议,通过不同的路径来调用,常用GET和POST方法,入参一般以key-value(键-值)的形式,响应信息一般都是JSON串。

 

2,Selenium优势及工作原理:

  1)支持的语言、平台、浏览器:

•多语言支持:Java、C#、PHP、Python、Perl、Ruby。   

•多平台支持:Linux、Windows、Mac。   

•多浏览器支持:Firefox、Chrome、IE、Opera、Edge、Safari、HtmlUnit、PhantomJS。

2)配套工具:

  • Selenium RC,在3.0版本中已经被移除
  • Selenium WebDriver,可以通过Web-Driver直接控制浏览器,完成一系列操作。
  • Selenium IDE,可以通过记录用户操作并将其导出作为重复使用的脚本,支持多种语言。
  • Selenium Grid,可以用于不同机器、不同浏览器进行并行测试。

3)工作原理:

  WebDriver是基于Server-Client模式设计的,Server端即浏览器,Client端即脚本。简单来说就是测试脚本中启动浏览器后,将目标浏览器绑定到特定的端口上来监听Client端发出的请求,在浏览器接收到这些请求后,做出响应,并给出相应的操作。

posted @ 2021-10-27 10:42  今天不喝奶茶哦  阅读(51)  评论(0)    收藏  举报