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());

}

}

结果:

java main test_java调用main自动执行testng方法一相关推荐

  1. Java动态代理invoke方法自动执行的原因

    Java动态代理invoke方法自动执行的原因 在动态代理中,一般的是先调用Proxy.newProxyInstance()生成代理对象,然后通过调用代理对象的对应方法来实现增强,这里假设代理了被代理 ...

  2. java中怎么调用邮箱自动回信息_使用java发送短信和邮件

    (1)发送短信 1.1在中国网建SMS上注册一个用户名,并获取短信密钥(非登录密码) 1.2代码 import java.io.IOException; import org.apache.commo ...

  3. java获取鼠标在屏幕中的位置 方法一_Java如何获取鼠标指针的位置?

    MouseInfo 提供获取有关鼠标信息的方法,例如鼠标指针的位置和鼠标按钮的数量.package org.nhooo.example.awt; import java.awt.*; public c ...

  4. java获取鼠标在屏幕中的位置 方法一_Java在多个监视器环境中获取鼠标位置

    基本上,我所做的是取 PointerInfo 并从中减去 GraphicsDevice 界限,如果结果少于 0 (因为屏幕是主屏幕左侧),我将结果乘以 -1 解决方案的核心看起来像这样...... / ...

  5. arcgis 线自动构面的方法一例

    arcgis 线自动构面的方法一例 public class CreatePolygonTools { //自动构造面 public static bool AutoCompleteFromGeome ...

  6. pmd java_用PMD自动执行Java代码静态分析

    一起学习 一.基础知识 PMD是一种分析Java代码错误的工具.与其他分析工具不同的是,PMD通过静态分析获知代码错误.也就是说,在不运行Java程序的情况下报告错误.PMD附带了许多可以直接使用的规 ...

  7. java http异步调用_HttpClient的异步调用,你造吗?

    一.前言 HttpClient提供了两种I/O模型:经典的java阻塞I/O模型和基于Java NIO的异步非阻塞事件驱动I/O模型. Java中的阻塞I/O是一种高效.便捷的I/O模型,非常适合并发 ...

  8. java使用jdbc调用hive出现The query did not generate a result set!

    2019独角兽企业重金招聘Python工程师标准>>> java使用jdbc调用hive出现The query did not generate a result set! 博客分类 ...

  9. Java / Tensorflow - API 调用 pb 模型使用 GPU 推理

    目录 一.引言 二.Java / Tensorflow 代码配置 1.代码配置 2.Maven 配置 三.环境检测 1.显卡检测 2.显卡监控 四.推理踩坑 1.异常现象 2.异常日志 五.安装 cu ...

最新文章

  1. 正则表达式 - 语法
  2. 解决ping 127.0.0.1 一般故障 问题
  3. SpringBoot | 第十五章:基于Postman的RESTful接口测试
  4. vlist java实现-转
  5. 【转】C#正则表达式小结
  6. 最长上升子序列(LIS)算法
  7. 2021年安徽高考英语口试成绩查询,2021高考英语口语考试成绩
  8. 华为读取版本exe_关于esrv_svc.exe和SurSvc.exe疑似泄露用户信息的猜测
  9. 详解:Spark程序的开始 SparkContext 源码走一走
  10. 递归法:整数划分问题(怎么进行划分呢)
  11. 3.Prometheus 监控技术与实践 --- Exporter
  12. NoSuchMethodError: No virtual method centerCrop()/glide
  13. 信息论的基本概念(自信息,条件熵,联合熵,互信息,条件互信息)
  14. 谷歌开源 Embedding Projector 高维数据可视化--转自开源中国
  15. spark机器学习 源码解析及原理分析
  16. css3多变形,CSS3 clip-path polygon图形构建与动画变换二三事
  17. tiff文件读写等操作(多帧tiff图像保存成的.tif文件)
  18. Unity常见资源类型
  19. html背景图片可以设置边框吗,css边框图片怎么设置?
  20. RMAN-06091 no channel allocated for maintenance

热门文章

  1. Bootstrap list-group-item获取值
  2. XGBoost的PU-Learning
  3. Dockerfile构建MySQL
  4. 如何用ABP框架快速完成项目(2) - 快的定义!
  5. 长这么大了,一件事也没做好过
  6. C语言嵌入式系统编程修炼之道——背景篇
  7. cheerio的小案例
  8. 一道关于Promise应用的面试题
  9. Colors on the web
  10. Linux经典实用的使用技巧33则和常用60个命令