Maven+testng+yaml:Selenium Page

作者: chuckielove | 来源:发表于2017-03-15 18:22 被阅读0次

    第一篇、搭建selenium开发环境

    1、准备相关的Java环境

    下载jdk 1.8

    http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

    Java SE Development Kit 8u121

    下勾选:Accept License Agreement

    笔者是64位windows环境:选择如图版本下载安装

    2、配置环境变量

    参考:http://jingyan.baidu.com/article/9f63fb91d87fb0c8400f0e93.html

    3、准备自己的开发ide

    笔者使用的intellij ide所以在这里介绍的都是这种工具,对于使用eclipse的童鞋说声抱歉了

    选择File》New Project》Maven,填写好相关信息

    创建maven工程OK。

    第二篇:配置工程pom文件,下载相关依赖

    笔者使用到selenium和testng相关资源和yaml解析包(后续介绍如何使用),pom配置如下:

    第三篇:Page Object模式实现测试代码封装

    说起page object模式最大的优势在于使代码更易懂,后期维护更加方便

    以下以网易云音乐web版本为例进行讲解

    工程整体架构:

    1、元素定位信息存储在yaml配置文件中,实现无需代码重新编译应对页面变更引起的元素定位方式的变动,/resources/locator目录下:

    2、要启动的浏览器,baseurl,数据库等配置信息存放在/resources/config目录下:

    3、对于yaml文件的解析和selenium基本方法的封装分别在ParseYamlUntil和WebDriverUntil两个类中完成,有些童鞋习惯用BasePage类来实现WebDriverUntil类的功能也是可以的,看个人喜好,实际作用相同。

    4、基本条件已经完成,开始page objcet的实现,以HomePage为例:

    * 借助面向对象的思想,页面即类,页面类中包含页面的属性和方法

    * 属性即页面元素,方法即页面元素的相关动作

    第四篇:测试方法实现

    完成了对HomePage和SearchResultPage的封装之后,结合testng实现测试方法

    package play;

    import org.testng.annotations.Test;

    import pages.HomePage;

    import pages.SearchResultPage;

    public class TestPlayMusic {

    @Test(description="搜索wild wild web歌曲并播放!")

    public voidtestSearchAndPlayMusic(){

    HomePage.cleanSearchInput();

    HomePage.inputSearchContent("wild wild web");

    HomePage.doSearchAction();

    SearchResultPage.handleIFrame();

    SearchResultPage.doPlayAction();

    }

    }

    可见,测试方法中直接调用的都是page中的方法,组合而成,简单易懂!

    第五篇:运行测试

    在工程目录下创建xml文件夹用于管理testng的配置文件,在xml下创建test.xml:

    右键选择Run,运行测试看看吧。

    第六篇:持续集成CI

    下载并启动tomcat,把下载的Jenkins的war包放在tomcat的webapp目录下,启动tomcat服务,打开浏览器,访问:localhost:8080/jenkins

    新建:maven项目,配置好源码管理

    配置post step:

    保存配置,在工程管理页面点击立即构建查看自己的成果吧

    相关文章

      网友评论

        本文标题:Maven+testng+yaml:Selenium Page

        本文链接:https://www.haomeiwen.com/subject/lytknttx.html