通过JUnit查看操作执行时间

获取网页内容的方法:

public class NetWorkUtil {

	public static String getHTMLContent(String site) {
		URL url = null;
		try {
			url = new URL(site);
		} catch (MalformedURLException e) {
			e.printStackTrace();
		}
		StringBuilder content = null;
		try {
			HttpURLConnection conn = (HttpURLConnection) url.openConnection();
			BufferedReader br = new BufferedReader(new InputStreamReader(conn.getInputStream(),"UTF8"));
			content = new StringBuilder();
			String temp = null;
			while((temp = br.readLine()) != null) {
				content.append(temp);
			}
		} catch (IOException e) {
			e.printStackTrace();
		}
		return content.toString();
	}
}

测试类:

public class TestRunner {

	private String site;
	
	@Before
	public void setUp() throws Exception {
		site = "http://www.soft.zjut.edu.cn:8080";
	}

	@After
	public void tearDown() throws Exception {
		site = null;
	}

	@Test
	public void test() {
		System.out.println(NetWorkUtil.getHTMLContent(site));
	}

}

执行:


查看执行时间:


(21.227秒)

如果规定测试方法的最多执行时间:

@Test(timeout=1000)  (单位:毫秒)

public class TestRunner {

	private String site;
	
	@Before
	public void setUp() throws Exception {
		site = "http://www.soft.zjut.edu.cn:8080";
	}

	@After
	public void tearDown() throws Exception {
		site = null;
	}

	@Test(timeout = 3000)
	public void test() {
		System.out.println(NetWorkUtil.getHTMLContent(site));
	}

}


(test timed out after 3000 milliseconds)

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,我会尽力回答你的问题。 首先,我们需要定义出差请假申请的需求,以便编写测试用例。假设该需求如下: 1. 用户可以提交出差请假申请。 2. 用户需要填写申请表,包括申请人姓名、出差时间、请假时间、出差地点、请假原因等信息。 3. 用户提交申请后,系统需要自动生成一份申请单,并将其保存到数据库中。 4. 管理员可以查看所有申请单,并对其进行批准或拒绝操作。 接下来,我们可以使用 JUnit 单元测试框架,编写测试用例来验证这些需求是否被满足。具体步骤如下: 1. 创建一个名为 "TestLeaveRequest" 的测试类,并在其中添加测试方法。 2. 在测试方法中,创建一个模拟的出差请假申请对象,并设置其属性。 3. 调用系统的提交申请方法,将模拟的申请对象提交到系统中。 4. 验证系统是否正确生成申请单,并将其保存到数据库中。 5. 创建一个模拟的管理员对象,并调用系统的查询申请单方法,获取所有申请单列表。 6. 验证系统是否正确返回所有申请单信息。 7. 调用系统的批准或拒绝申请方法,对申请单进行操作。 8. 验证系统是否正确更新申请单状态。 下面是一个示例测试用例: ```java import static org.junit.Assert.*; import java.util.List; import org.junit.Test; public class TestLeaveRequest { @Test public void testSubmitRequest() { // 创建一个模拟的出差请假申请对象 LeaveRequest request = new LeaveRequest(); request.setApplicant("张三"); request.setTripTime("2021-05-01"); request.setLeaveTime("2021-05-10"); request.setDestination("上海"); request.setReason("参加会议"); // 调用系统的提交申请方法 LeaveRequestService service = new LeaveRequestService(); service.submitRequest(request); // 验证系统是否正确生成申请单,并将其保存到数据库中 List<LeaveRequest> requests = service.getAllRequests(); assertNotNull(requests); assertTrue(requests.size() > 0); LeaveRequest savedRequest = requests.get(0); assertEquals(request.getApplicant(), savedRequest.getApplicant()); assertEquals(request.getTripTime(), savedRequest.getTripTime()); assertEquals(request.getLeaveTime(), savedRequest.getLeaveTime()); assertEquals(request.getDestination(), savedRequest.getDestination()); assertEquals(request.getReason(), savedRequest.getReason()); assertNotNull(savedRequest.getRequestId()); // 创建一个模拟的管理员对象 Admin admin = new Admin(); admin.setUsername("admin"); admin.setPassword("admin"); // 调用系统的查询申请单方法,获取所有申请单列表 List<LeaveRequest> allRequests = service.queryRequests(admin); // 验证系统是否正确返回所有申请单信息 assertNotNull(allRequests); assertTrue(allRequests.size() > 0); assertEquals(savedRequest, allRequests.get(0)); // 调用系统的批准申请方法,对申请单进行操作 service.approveRequest(admin, savedRequest.getRequestId()); // 验证系统是否正确更新申请单状态 List<LeaveRequest> approvedRequests = service.queryRequests(admin); assertNotNull(approvedRequests); assertTrue(approvedRequests.size() > 0); assertEquals(LeaveRequestStatus.APPROVED, approvedRequests.get(0).getStatus()); } } ``` 我们可以使用 Eclipse 等集成开发环境来运行这个测试用例,或者使用 Maven 等构建工具来自动化运行测试用例。 希望这能帮助你解决问题!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值