• 行为驱动:Cucumber + Selenium + Java(五)


    在上一篇中,我们介绍了Selenium + Cucumber + Java框架下的测试用例参数化/数据驱动,这一篇我们来使用maven去搭建cucumber框架以及实现测试报告。

    5.1 为什么要用maven

      我们在第一篇里是用手工下载jar包的形式去配置的我们的cucumber框架,这是出于学习的目的。实际上,真实项目中一般会使用maven去做环境搭建,也会更方便。

      Apache Maven, 是一个软件(特别是Java软件)项目管理及自动构建工具,基于项目对象模型(POM)概念,Maven利用一个中央信息片段能够管理一个项目的构建,报告和文档等步骤。

      一般来说,构建工具有以下功能:
      1)编译源代码
      2)拷贝资源
      3)编译和运行测试脚本
      4)项目打包
      5)项目部署
      7)清除

      Maven使用一个pom.xml文件来实现以上功能,文件里面主要包含以下内容:

      1)项目的描述
      2)名称,版本,源码路径,依赖关系
      3)插件
      4)构建配置简介
      5)默认使用XML

    5.2 安装maven

      安装maven和安装java jdk或者Jmeter差不多,都是下载文件,解压到一个路径,然后配置环境变量,最后在cmd输入查看版本号,来检查是否安装成功。

      网上有很多maven安装的教程,这里不再赘述。

      Maven下载地址:http://maven.apache.org/download.cgi

    5.3 使用maven配置cucumber项目

      在eclipse中新建一个maven项目CucumberMVNProject,打开项目自带的pom.xml文件,加入以下依赖信息:

         <dependency>
                <groupId>info.cukes</groupId>
                <artifactId>cucumber-core</artifactId>
                <version>1.2.5</version>
            </dependency>
            <dependency>
                <groupId>info.cukes</groupId>
                <artifactId>cucumber-java</artifactId>
                <version>1.2.5</version>
            </dependency>
            <dependency>
                <groupId>junit</groupId>
                <artifactId>junit</artifactId>
                <version>4.12</version>
            </dependency>
            <dependency>
                <groupId>info.cukes</groupId>
                <artifactId>cucumber-junit</artifactId>
                <version>1.2.5</version>
            </dependency>
            <dependency>
                <groupId>org.seleniumhq.selenium</groupId>
                <artifactId>selenium-java</artifactId>
                <version>2.47.1</version>
            </dependency>
            <dependency>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-surefire-plugin</artifactId>
                <version>2.12.4</version>
            </dependency>
            <dependency>
                <groupId>org.picocontainer</groupId>
                <artifactId>picocontainer</artifactId>
                <version>2.14</version>
            </dependency>
            <dependency>
                <groupId>info.cukes</groupId>
                <artifactId>cucumber-picocontainer</artifactId>
                <version>1.2.5</version>
            </dependency>

      修改完毕后保存,就可以看到eclipse会在后台开始去自动下载并添加以上所有项目依赖的jar包。

    5.4 测试和报告

      配置好项目后,就可以按照我们之前篇幅的介绍去开始自动化代码编写了,编写过程与前几篇没有区别。

      注意在runner类中,cucumberOptions,我们加入如下选项:

    format = {"pretty", "html:target/cucumber", "json:target/cucumber.json"}

      执行完测试,在项目的target文件下面,为我们生成html和json两种格式的测试报告。

      html格式的默认报告形式如下:

      

      如果我们结合扩展报告功能,还可以生成格式更为美观,功能更为强大的报告:

      

      结合jenkins的cucumber report插件:

      

      

      

      可以说,强大的报告功能是使用cucumber这个框架一个重要的优势,特别是对于项目管理和客户而言,征服他们有时候就需要这么一张美观好懂的报告。

       留言回复666,下一篇我们就介绍如何实现功能更为强大的cucumber测试报告。

       

      

  • 相关阅读:
    delphi操作xml学习笔记 之一 入门必读
    Delphi中实现ListView滚动条的换肤方案
    关于CreateParams的参数
    Delphi中编写OwnerDraw方式按钮的方法以及注意点
    ClientDataSet使用心得和技巧
    ADO多线程
    SQL的单个表的大小限制最大可以是多大?
    TClientDataSet使用要点
    鼠标拖动窗体
    Delphi托盘类 收集
  • 原文地址:https://www.cnblogs.com/yingyingja/p/9803752.html
Copyright © 2020-2023  润新知