No tests found matching

今天使用junit测试时,明明使用了@Test ,但就是报异常如下:

java.lang.Exception: No tests found matching [{ExactMatcher:fDisplayName=testDownload], {ExactMatcher:fDisplayName=testDownload(resource.DownLoadTest)], {LeadingIdentifierMatcher:fClassName=resource.DownLoadTest,fLeadingIdentifier=testDownload]] from org.junit.internal.requests.ClassRequest@515f550a
	at org.junit.internal.requests.FilterRequest.getRunner(FilterRequest.java:40)
	at org.eclipse.jdt.internal.junit4.runner.JUnit4TestLoader.createFilteredTest(JUnit4TestLoader.java:77)
	at org.eclipse.jdt.internal.junit4.runner.JUnit4TestLoader.createTest(JUnit4TestLoader.java:68)
	at org.eclipse.jdt.internal.junit4.runner.JUnit4TestLoader.loadTests(JUnit4TestLoader.java:43)
	at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:444)
	at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:675)
	at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:382)
	at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:192)

源代码如下:

@Test
	public static void testDownload(){

		
		ClientConfig config = new ClientConfig();
		config.register(MultiPartFeature.class);
		Client client = ClientBuilder.newClient(config);
		client.property("accept", "image/png");
		
		
		WebTarget target = client.target( "http://localhost:8080/rest.jerseyUpload/rest/file").path("download");
		Builder builder = target.request();
		
		// local variables
		Response response = builder.get();
		
		InputStream inputStream = null;
		OutputStream outputStream = null;
		String responseString = null;

		String filePath = "e:/test/upload/02.jpg";

		try {

			// get response code
			int responseCode = response.getStatus();
			System.out.println("Response code: " + responseCode);

			if (response.getStatus() != 200) {
				throw new RuntimeException("Failed with HTTP error code : " + responseCode);
			}

			// get response message
			String responseMessageFromServer = response.getStatusInfo().getReasonPhrase();
			System.out.println("ResponseMessageFromServer: " + responseMessageFromServer);

			// read response string
			inputStream = response.readEntity(InputStream.class);
			outputStream = new FileOutputStream(filePath);
			byte[] buffer = new byte[1024];
			int bytesRead;
			while ((bytesRead = inputStream.read(buffer)) != -1) {
				outputStream.write(buffer, 0, bytesRead);
			}

			// set download SUCCES message to return
			responseString = "downloaded successfully at " + filePath;
			System.out.println(responseString);
		} catch (Exception ex) {
			ex.printStackTrace();
		} finally {
			// release resources, if any
			try {
				outputStream.close();
			} catch (IOException e) {
				e.printStackTrace();
			}
			response.close();
			client.close();
		}
	}

后来看了N遍,发现方法里有有static修饰,因为原来是用main()来测试,故static没去掉直接用来junit测试,然后试着把static去掉,果然测试正常了。

后来又试下下带返回值的,即

    @Test

    public String testDownload(){return "";}

发现运行时一样报这样的异常。

看来junit测试时,发现

 No tests found matching

异常时,先检查方法是不是有static修饰,以及是否有返回值。无论哪个是肯定的时,都会报错。


转载于:https://my.oschina.net/u/2430057/blog/608878

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值