在做测试的时候,经常需要获取系统信息,并且用获取到的系统时间给生成的报告取名字。
以下代码实在TestNG展示的,没有Test NG的话需要些一个main方法。
import java.net.InetAddress; import java.util.Properties; import java.util.Calendar; import java.util.Date; import java.text.SimpleDateFormat; import org.testng.annotations.Test; public class OSInfo { @Test public static void Config() { try { InetAddress addr = InetAddress.getLocalHost(); String ip = addr.getHostAddress().toString(); //获取本机ip String hostName = addr.getHostName().toString(); //获取本机计算机名称 System.out.println("本机IP:" + ip + " 本机名称:" + hostName); Properties props = System.getProperties(); System.out.println("操作系统的名称:" + props.getProperty("os.name")); System.out.println("操作系统的版本:" + props.getProperty("os.version")); //获取用户的名称和工作目录 System.out.println("用户的账户名称:" + props.getProperty("user.name")); System.out.println("用户的主目录:" + props.getProperty("user.home")); System.out.println("用户的当前工作目录:" + props.getProperty("user.dir")); //获取Java版本信息 System.out.println("Java的运行环境版本:" + props.getProperty("java.version")); //获取Java安装目录 System.out.println("Java的安装路径:" + props.getProperty("java.home")); SimpleDateFormat goodFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");//设置日期格式 System.out.println(goodFormat.format(new Date()));// new Date()为获取当前系统时间 //以上返回的日期和时间格式为,例如:2019-02-20 16:10:42 //获取时间,精确到毫秒,三个大写的SSS代表毫秒 SimpleDateFormat sf = new SimpleDateFormat("yyyyMMddHHmmssSSS");//设置日期格式 System.out.println(sf.format(new Date())); //以上返回的日期和时间格式为,例如:20190220161042 //获取毫秒,以下几句纯属参考,可以不要 Calendar Cld = Calendar.getInstance(); int MI = Cld.get(Calendar.MILLISECOND); goodFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss:SSS");//设置日期格式 System.out.println(goodFormat.format(new Date()));// new Date()为获取当前系统时间 } catch (Exception e) { e.printStackTrace(); } } }