1.新建maven项目

2.下载selenium的jar包,放入maven依赖库中

3.新增testng依赖库,build path->add libirary->testng

4.查看自己电脑的谷歌浏览器版本,寻找对应的chromedriver谷歌浏览器驱动,注意:不同驱动版本支持的浏览器版本不同

下载对应的chromedriver,并放置到本地的谷歌浏览器安装目录下,如图

5.在新建的项目下面,新建一个testng class的java文件,尝试调用驱动打开浏览器

选择新建的testng文件需要包括哪些注解,具体各种注解的使用方法如图

注解

描述

@BeforeSuite

注解的方法将只运行一次,运行所有测试前此套件中。

@AfterSuite

注解的方法将只运行一次此套件中的所有测试都运行之后。

@BeforeClass

注解的方法将只运行一次先行先试在当前类中的方法调用。

@AfterClass

注解的方法将只运行一次后已经运行在当前类中的所有测试方法。

@BeforeTest

注解的方法将被运行之前的任何测试方法属于内部类的 <test>标签的运行。

@AfterTest

注解的方法将被运行后,所有的测试方法,属于内部类的<test>标签的运行。

@BeforeGroups

组的列表,这种配置方法将之前运行。此方法是保证在运行属于任何这些组第一个测试方法,该方法被调用。

@AfterGroups

组的名单,这种配置方法后,将运行。此方法是保证运行后不久,最后的测试方法,该方法属于任何这些组被调用。

@BeforeMethod

注解的方法将每个测试方法之前运行。

@AfterMethod

被注释的方法将被运行后,每个测试方法。

@DataProvider

标志着一个方法,提供数据的一个测试方法。注解的方法必须返回一个Object[] [],其中每个对象[]的测试方法的参数列表中可以分配。

该@Test 方法,希望从这个DataProvider的接收数据,需要使用一个dataProvider名称等于这个注解的名字。

@Factory

作为一个工厂,返回TestNG的测试类的对象将被用于标记的方法。该方法必须返回Object[]。

@Listeners

定义一个测试类的监听器。

@Parameters

介绍如何将参数传递给@Test方法。

@Test

标记一个类或方法作为测试的一部分。

关于testng的使用方法网上有很多,需要关注的是,testng与junit的区别,经常被用来当做面试问题。testng可以认为是junit的升级版。

新建testng class成功后,录入以下代码

package com.UI.testDemo;

import org.testng.annotations.Test;
import org.testng.annotations.BeforeMethod;
import org.testng.annotations.AfterMethod;
import org.testng.annotations.DataProvider;
import org.testng.annotations.BeforeClass;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;
import org.testng.annotations.AfterClass;
import org.testng.annotations.BeforeTest;
import org.testng.annotations.AfterTest;

public class helloworld {
WebDriver driver;//定义一个webdrive驱动

@BeforeMethod
public void beforeMethod() {
}

@AfterMethod
public void afterMethod() {
System.out.println("Page title is:"+driver.getTitle());//输出页面标题
driver.quit();//关闭浏览器
}
@Test
public void test_case() {
driver=new ChromeDriver();//新建一个谷歌浏览器驱动
driver.get("http://www.baidu.com");//打开浏览器,并打开百度页面
}

@BeforeClass
public void beforeClass() {
}

@AfterClass
public void afterClass() {
}

}

如果你成功打开了浏览器,并跳转到了百度页面,而且eclipse控制台输出了百度页面的标题,并且能够关闭浏览器

那恭喜你,配置和项目都已经没有问题了,接下来就可以写自动化UI测试脚本了

另外,看到两篇关于如何在jenkins中执行testng脚本的文章,地址如下:

https://blog.csdn.net/lykangjia/article/details/72770461

https://www.cnblogs.com/chengbai/p/9948095.html

JAVA+SELENIUM+MAVEN+TESTNG框架(二)新建项目的更多相关文章

  1. java+selenium+maven+testng框架(一)安装搭建

    1.安装jdk(注意:需配置环境变量,可自行百度方法); 2.安装eclipse; 3.安装maven(注意:需配置环境变量,可自行百度方法); 4.在eclipse中新建maven项目 新建成功 注 ...

  2. IDEA+Java:Selenium+Maven+TestNG基本WebUI自动化测试环境搭建

    IDEA+java:Selenium+Maven+TestNG 本文介绍的测试环境,应该是最基本的测试环境了,也是很多文章都有写,这里做一个完整的图文配置整理,方便阅读理解! 使用maven的好处,由 ...

  3. 从零开始学习 asp.net core 2.1 web api 后端api基础框架(二)-创建项目

    原文:从零开始学习 asp.net core 2.1 web api 后端api基础框架(二)-创建项目 版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.ne ...

  4. Python网络爬虫_Scrapy框架_1.新建项目

    在Pycharm中新建一个基于Scrapy框架的爬虫项目(Scrapy库已经导入) 在终端中输入: ''itcast.cn''是为爬虫限定爬取范围 创建完成后的目录 将生成的itcast.py文件移动 ...

  5. TestNG+Java+Selenium+Maven 代码实例

    搭环境时注意不要忘记testng的jar包,selenium的jar包 package com.guge.test; import org.testng.annotations.Test;import ...

  6. 【温故知新】Java web 开发(一) 新建项目

    简述本文写作目的:本文主要用于回忆基础 java web 项目的搭建,在不使用 Spring 等框架的前提下,单纯使用 jsp 和 servlet 完成. 1. 新建 maven 项目,不使用 arc ...

  7. Java&Selenium Web自动化测试框架理念

    一.自动化测试含义 在自动化测试领域内流传着一个说法:单元测试才是自动化测试的核心,在自动化测试里,无论框架何等完美都不可能脱离单元测试,单元测试将会是自动化测试里最小的单位,把它看作单位一,若干个单 ...

  8. 【亲测】自动构建多个指定的class并发执行:Jenkins+Maven+Testng框架

    要解决的问题:jenkins在自动构建maven项目时如何并发执行多个指定的class类 预置条件:testngXXX.xml文件已指定了多个class类 解决步骤:1.在maven项目中新建指定te ...

  9. java+selenium+maven+IntelliJ IDEA 搭建简单的UI自动化测试环境

    1. 用IntelliJ IDEA新建一个maven工程 2. 在pom.xml中添加依赖: <dependency> <groupId>org.seleniumhq.sele ...

随机推荐

  1. 屏幕抓取程序 (位图DDB的例子)

    屏幕抓取程序的意思是将整个屏幕图显示在应用程序的用户区中,等价于截图.对桌面窗口的操作:首先得知道桌面窗口的宽和高,获取宽和高需要利用窗口的设备句柄,而获取设备句柄需要知道窗口句柄,这一系列的连串关系 ...

  2. SED单行脚本快速参考(Unix 流编辑器)

    ------------------------------------------------------------------------- SED单行脚本快速参考(Unix 流编辑器) 200 ...

  3. 2017-2018-1 20155326 《信息安全系统设计基础》第四周学习总结及myod改进版的补交

    2017-2018-1 20155326 <信息安全系统设计基础>第四周学习总结及myod改进版的补交 学习内容 补充完成课上没有完成的内容 学习教材附录A,第十章内容 参考别出心裁的Li ...

  4. JS 对象(Object)和字符串(String)互转方法

    利用原生JSON对象,将对象转为字符串 1 2 3 4 5 6 var jsObj = {}; jsObj.testArray = [1,2,3,4,5]; jsObj.name = 'CSS3'; ...

  5. LCA tarjan+并查集POJ1470

    LCA tarjan+并查集POJ1470 https://www.cnblogs.com/JVxie/p/4854719.html 不错的一篇博客啊,让我觉得LCA这么高大上的算法不是很难啊,嘻嘻嘻 ...

  6. OmniThreadLibrary学习笔记

    http://blog.sina.com.cn/s/articlelist_1157240623_6_1.html 非常好的控件,仔细看

  7. 查询字段描述sql-postgresql

    查询字段描述sql SELECT 'comment on column ' || n.nspname ||'.'|| c.relname || '.' || a.attname ||' is '''| ...

  8. Palindrome II

    Problem Statement Given a string s, partition s such that every substring of the partition is a pali ...

  9. kali linux 安装sublime text3完全教程

    点击进入官网 下载页面 将鼠标放在64 bit(64位系统)上右击复制链接 打开终端: #wget 路径(粘贴刚复制的) #tar -xvvf 刚刚下载的文件文件名(解压) #mv 解压出来的文件名  ...

  10. C++获取系统信息(IP地址、硬件信息等)

    #include<stdio.h> #include<winsock2.h> //该头文件需在windows.h之前 #include<windows.h> #in ...