Selenium Web 自动化 - 测试框架(一)

目录

1 框架结构雏形
2 把Java项目转变成Maven项目
3 加入TestNG配置文件 
4 Eclipse编码修改
5 编写代码
  5.1 封装Selenium操作
  5.2 使用log4j进行日志输出
  5.3 封装测试平台和测试浏览器选择工具类
  5.4 根据key读取属性文件里面的value值
  5.5 arrow插件解析
    5.5.1 ConfigReader.java
    5.5.2 负责监听测试运行状态和结果
    5.5.3 负责失败的用例重跑的监听器
    5.5.4 负责生成测试报告的监听器
  5.6 用例的开头和结尾设计
  5.7 页面类设计
  5.8 页面帮助类设计
  5.9 书写第一个用例
  5.10 完整的pom.xml和testng.xml
6 配置测试报告目录
7 填加driver
8 执行用例

自动化项目由maven+TestNG+selenium设计而成。

  • maven:是一个项目管理工具,主要用于项目构建,依赖管理,项目信息管理。这里主要用到它的jar包管理
  • TestNG:是一套根据JUnit 和NUnit思想而构建的利用注释来强化测试功能的一个测试框架,即可以用来做单元测试,也可以用来做集成测试。

1 框架结构雏形

新建的一个java project,项目名为autotest,创建如下结构

图1 框架结构雏形

  • base:里面有个基类 (BaseParpare.java),这个类的主要作用是启动(启动浏览器使用了TetsNG的@BeforeClass)和关闭浏览器的作用(关闭浏览器使用了TetsNG的@AftereClass)
  • pages:页面元素类,每一个java类,都是一个页面,存放的都是对应页面的所有元素定位值。
  • pageshelper:这个包主要存放的是对应页面的帮助类
  • plugins:主要存放的是arrow插件以及第三方插件。
  • testcases:顾名思义就是存放测试用例的地方
  • utils:这个包主要是封装了各种工具类,Selenium api封装类,读取属性文件类和选择浏览器类等
  • config目录:存储框架类所需的所有属性文件,比如arrow的配置文件以及自定义的一些属性文件。
  • res目录:主要存放的是driver
  • result目录:存储测试框架运行测试用例生成的报告(包含log,截图等)

2 把Java项目转变成Maven项目

右击项目->configure->covert to maven project,修改属性groupId=com.demo,

生成pom.xml如下所示:

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>com.demo</groupId>
  <artifactId>autotest</artifactId>
  <version>0.0.1-SNAPSHOT</version>
  <build>
    <sourceDirectory>src</sourceDirectory>
    <plugins>
      <plugin>
        <artifactId>maven-compiler-plugin</artifactId>
        <version>3.1</version>
        <configuration>
          <source>1.8</source>
          <target>1.8</target>
        </configuration>
      </plugin>
    </plugins>
  </build>
</project>

其中:

  • Group Id:填写你组织机构,比如我这里就写的com.demo,例如要是百度可以写成com.baidu

Artifact Id:可以理解成为项目打包成jar包的ID 或者说 jar包名字,一般以项目名命名。

3 加入TestNG配置文件 (修改pom.xml)

4 Eclipse编码修改

为了统一编码和以后为了避免乱码的出现,我们整个环境都使用UTF-8编码模式

Window-> Preferences,在弹出窗口Preferences中general->workspace, text file encoding 选择other 选项为UTF-8

 

posted @ 2019-03-18 16:19  快乐小王子帅气哥哥  阅读(50)  评论(0)    收藏  举报  来源

Loading