java main test_java调用main自动执行testng方法一

主方法

import com.com.utlis.createTestngXml;

import org.testng.TestNG;

import java.util.ArrayList;

import java.util.List;

/**

* @author lw

* @createTime 2019/3/30 15:35

* @description testng调试类

*/

public class inittet {

private static final String ESCAPE_PROPERTY = "org.uncommons.reportng.escape-output";

public static void main(String[] args) {

try {

//执行的类

createTestngXml.createTestngXml("com.com.javatest.one.domese");

} catch (Exception e) {

e.printStackTrace();

}

System.setProperty(ESCAPE_PROPERTY, "false");

List suites = new ArrayList();

System.out.println(suites);

suites.add(System.getProperty("user.dir") + "/mytestng.xml");

TestNG tng = new TestNG();

tng.setTestSuites(suites);

tng.run();

}

}

创建xml方法

import org.dom4j.Document;

import org.dom4j.DocumentHelper;

import org.dom4j.Element;

import org.dom4j.io.OutputFormat;

import org.dom4j.io.XMLWriter;

import java.io.*;

import java.util.ArrayList;

import java.util.List;

/**

* @author lw

* @createTime 2019/3/30 16:12

* @description 自动生成tesgng.xml

*/

public class createTestngXml {

public static void createTestngXml(String classname) throws Exception {

Document document = DocumentHelper.createDocument();

Element root = DocumentHelper.createElement("suite");

document.setRootElement(root);

root.addAttribute("name", "automation");

root.addAttribute("parallel", "Automatically generate xml");

root.addAttribute("thread-count", String.valueOf("1"));

Element listeners = root.addElement("listeners"); //子标签

Element listener1 = listeners.addElement("listener");

listener1.addAttribute("class-name", "org.uncommons.reportng.HTMLReporter");

Element listener2 = listeners.addElement("listener");

listener2.addAttribute("class-name", "org.uncommons.reportng.JUnitXMLReporter");

Element test = root.addElement("test");

test.addAttribute("name", "127.0.0.1");

Element classes = test.addElement("classes");

Element classNode = classes.addElement("class");

classNode.addAttribute("name", classname);

OutputFormat format = new OutputFormat(" ", true);

XMLWriter xmlWrite2;

try {

xmlWrite2 = new XMLWriter(new FileOutputStream("mytestng.xml"), format);

xmlWrite2.write(document);

} catch (

UnsupportedEncodingException e) {

// TODO Auto-generated catch block

e.printStackTrace();

} catch (

FileNotFoundException e) {

// TODO Auto-generated catch block

e.printStackTrace();

} catch (

IOException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

System.out.println("执行成功!!!");

}

}

自定义xml

测试@test

import java.io.BufferedReader;

import java.io.IOException;

import java.io.InputStreamReader;

import java.io.OutputStreamWriter;

import java.net.HttpURLConnection;

import java.net.URI;

import java.net.URL;

import java.net.http.HttpClient;

import java.net.http.HttpRequest;

import org.testng.annotations.Test;

import java.net.http.HttpResponse;

/**

@author lw

@createTime 2019/3/30 16:12

@description 自动生成tesgng.xml

*/

public class domese {

@Test

public void ss11() {

try {

var url = new URL("http://www.oracle.com/");

var conn = url.openConnection();

var reader = new BufferedReader(new InputStreamReader(conn.getInputStream()));

System.out.println(reader);

} catch (IOException e) {

e.printStackTrace();

}

}

@Test

public void we() {

String uri = "http://www.baidu.com";

HttpClient client = HttpClient.newHttpClient();

HttpRequest request = HttpRequest.newBuilder()

.uri(URI.create(uri))

.GET()

.build();

HttpResponse response = null;

try {

response = client.send(request, HttpResponse.BodyHandlers.ofString());

} catch (IOException e) {

e.printStackTrace();

} catch (InterruptedException e) {

e.printStackTrace();

}

System.out.println(response.body());

}

}

结果:

ba47278d42875ed9b72fa3fdd47cf6ca.png?,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=

标签:java,Element,new,testng,org,catch,import,main

来源: https://blog.51cto.com/357712148/2371758

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/371682.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

ADF:动态视图对象

今天,我想写有关动态视图对象的文章,它允许我在运行时更改其数据源(SQL查询)和属性。 我将使用oracle.jbo.ApplicationModule :: createViewObjectFromQueryStmt方法来解决此问题。 我将逐步介绍如何执行此操作 创建视图对象和应…

java stack list_JAVA自己实现List接口Stack

package 集合.Stack;import java.util.Arrays;import java.util.EmptyStackException;import java.util.Vector;public class MyStack {//底层数组默认长度为10private Object[] myStack new Object[10];//sizeprivate int size 0;public MyStack() {}//pushpublic Object pu…

I / O神秘化

由于对高度可扩展的服务器设计的所有炒作以及对nodejs的狂热,我一直想重点研究IO设计模式,直到现在为止都没有足够的时间进行投资。 现在已经做了一些研究,我认为最好记下我遇到的东西,作为对我以及可能遇到这篇文章的任何人的未来…

java三大特性 继承_java基础(二)-----java的三大特性之继承

在《Think in java》中有这样一句话:复用代码是Java众多引人注目的功能之一。但要想成为极具革命性的语言,仅仅能够复制代码并对加以改变是不够的,它还必须能够做更多的事情。在这句话中最引人注目的是“复用代码”,尽可能的复用代码使我们程…

delphi用TAdoStoredProc调用存储过程,兼容sql2005、2008、2014的远程事务问题

delphi7写的程序,在sql2000里没问题,调用sql2008、2014里的存储过程时,如果存储过程里操作了大量数据,很容易会莫名其妙的自己撤销掉,但是程序还识别不到,认为还在正常执行。今天尝试换了个控件&#xff1a…

8、SpringCloud高频面试题-版本1

1、SpringCloud组件有哪些 SpringCloud 是一系列框架的有序集合。它利用 SpringBoot 的开发便利性巧妙地简化了分布式系统基础设施的开发,如服务发现注册、配置中心、消息总线、负载均衡、断路器、数据监控等,都可以用 SpringBoot 的开发风格做到一键启…

JavaOne 2012:Java策略主题演讲和IBM主题演讲

与 JavaOne 2010 相似,我对JavaOne 2012的开始也很艰难。由于“计算机和打印机技术上的困难”,办理登机手续的人花了70分钟为我提供JavaOne徽章。 尽管我不是世界上最有耐心的人,但比等待更令人失望的是,我错过了参加“社区会议&a…

java citymap_Java实现Map集合二级联动

Map集合可以保存键值映射关系,这非常适合本实例所需要的数据结构,所有省份信息可以保存为Map集合的键,而每个键可以保存对应的城市信息,本实例就是利用Map集合实现了省市级联选择框,当选择省份信息时,将改变…

JavaOne 2012:使用HTML5和Java构建移动应用程序

我返回了Parc 55 (任务会议室),观看Max Katz的( Exadel开发人员关系)“用HTML5和Java构建移动应用程序” Bird-of-Feather(BoF)演示。 具体来说,Katz在Tiggzi (基于云的应…

HDU 2602.Bone Collector-动态规划0-1背包

Bone Collector Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 85530 Accepted Submission(s): 35381 Problem DescriptionMany years ago , in Teddy’s hometown there was a man who was called “Bone Col…

简单谈谈js中的MVC

MVC是什么? MVC是一种架构模式,它将应用抽象为3个部分:模型(数据)、视图、控制器(分发器)。 本文将用一个经典的例子todoList来展开(代码在最后)。 一个事件发生的过程&a…

BTrace:Java开发人员工具箱中的隐藏宝石

这篇文章是关于BTrace的 ,我正在考虑将其作为Java开发人员的隐藏宝藏。 BTrace是用于Java平台的安全,动态跟踪工具。 BTrace可用于动态跟踪正在运行的Java程序(类似于DTrace,适用于OpenSolaris应用程序和OS)。 不久&am…

Spring–添加SpringMVC –第2部分

在上一部分中,我们为经理和员工实现了控制器。 既然我们知道了解决方法,我们将做很少(但仅做很少)更复杂的事情–任务和时间表的控制器。 因此,让我们从org.timesheet.web开始。 TaskController 。 首先创建一个类&…

2016 Android Top 10 Library

过去的 2016 年,开源社区异常活跃,很多个人与公司争相开源自己的项目,让人眼花缭乱,然而有些项目只是昙花一现,有些项目却持久创造价值,为开发者提供了极大的便利,这些终究由时间来判断。今天&a…

您在eXo平台上的第一个Juzu Portlet

菊珠是佛教的佛珠。 一句话,我相信您已经学到了什么,印象深刻吗? 好的,我在这里不谈论佛教。 Juzu还是一个用于快速开发Portlet(以及即将推出的独立应用程序)的新框架。 您可以在Juzu网站上找到所需的所有…

Spring注入方式及注解配置

一:基于xml的DI(Dependency Injection) 注入类型: 定义学生Student实体类和小汽车Car实体类:进行封装和生成ToString(),并自定义属性Car Student 123456789101112131415161718192021222324252627282930313233343536373…

修改readonly属性的值

一般情况下,readonly属性的值是无法修改的,但可以通过特殊方式修改。定义一个student的类,其中name属性为readonly类型的变量 interface JFStudent : NSObjectproperty(nonatomic,copy,readonly) NSString *hisName;property(nonatomic,copy)…

ReactNative开发环境

此内容根据徐赢老师的文档整理后写处 原版地址:https://tuomaxu.gitbooks.io/reactnative/content/ ReactNative是跨平开发的解决方案,在开发平台的选择上,mac平台和win平台都可以。 所需要工具如下: 1,Nodejs环境 2&a…

MediaInfo源代码分析 1:整体结构

博客地址:http://blog.csdn.net/leixiaohua1020/article/details/12016231 MediaInfo源代码分析系列文章列表: MediaInfo源代码分析 1:整体结构MediaInfo源代码分析 2:API函数MediaInfo源代码分析 3:Open()函数MediaI…

射线碰撞检测

在我们的游戏开发过程中,有一个很重要的工作就是进行碰撞检测。例如在射击游戏中子弹是否击中敌人,在RPG游戏中是否捡到装备等等。在进行碰撞检测时,我们最常用的工具就是射线,Unity 3D的物理引擎也为我们提供了射线类以及相关的函…