Jmeter(1):使用TCP取樣器與socket接口進行簡單通信


一個小任務:服務器與客戶端連接,每次發送50個隨機生成的字符,兩秒發送一次

失敗過太多次,然后昨晚終於跑通了,心情激動,於是清均第一篇博客就誕生了。

之前不了解jmeter,想過單純用java編寫服務器和客戶端,但代碼多。然后老師介紹了jmeter。還用過tomcat做接收端,但試了兩天都不行。

最后成功的方法:

用java寫服務器,jmeter模擬客戶端。

先介紹java寫服務器這方面,仿照教材寫了一個簡單的服務器。

 1 import java.net.*;
 2 import java.io.*;
 3 
 4 public class ServerSocketTest {
 5 
 6         private BufferedReader reader;
 7         private ServerSocket server;
 8         private Socket socket;                    //創建三個對象,服務器,套接字,還有用來讀取的reader
 9 
10         void getserver() {
11             try{
12                 server = new ServerSocket(8055);  //不能重復創建port一樣的ServerSocket,否則會報錯
13                 System.out.println("服務器套接字已經創建成功");
14                 while(true) {                                 //true的意思是套接字是連接狀態
15                     System.out.println("等待客戶機的連接");
16                     socket = server.accept();   //等待客戶機的連接,若連接,則創建一套接字
17                     reader = new BufferedReader(new InputStreamReader(socket.getInputStream()));
18                     getClientMessage();
19 
20                 }
21             }catch (Exception e) {
22                 e.printStackTrace();
23             }
24         }
25 
26         private void getClientMessage() {
27             //獲取客戶端信息
28             try{
29 
30                  System.out.println("客戶機:"+reader.readLine());  //很重要的一個方法,獲取客戶端信息
31 
32             }catch (Exception e) {
33                 e.printStackTrace();
34             }
35 
36             //接收到信息就關閉
37             try{
38 
39                 if (reader !=null) {
40                     reader.close();
41                 }
42                 if (socket !=null) {
43                     socket.close();
44                 }
45 
46             }catch (IOException e) {
47                 e.printStackTrace();
48             }
49         }
50 
51         public static void main(String[] args) {
52                 ServerSocketTest tcp = new ServerSocketTest();
53                 tcp.getserver();
54 
55     }
56 
57 }

 

啟動這個類的main函數,就相當於啟動了這個服務器。如下圖所示。

 

Jmeter部分:

Jmeter的下載安裝配置我就不詳細介紹了,網上可以找到很多教程。

打開bin文件夾,打開名為ApacheJmeter的jar包。等待jmeter啟動。

會看到一個測試計划,可以重命名。

右鍵測試計划,新建線程組——右鍵線程組--添加--sampler--tcp取樣器——右鍵tcp取樣器,添加監聽器。

一個框架大概就做好了。

在線程組里設置線程數,總時間和循環次數,我分別設置的是4,8,1

在tcp取樣器中添加服務器的ip地址和端口號,設置連接和響應時間。

點擊左上角選項——函數助手對話框——選擇功能__RandomString——長度填50,下一行輸入生成字符串的范圍。如1234567890qingjun,再下一行不用填。

——點擊生成,可以拷貝函數到tcp取樣器要發送的文本里,然后按回車空一行,不然發送不成功。

點擊右上角的黃色警示圖標可以看到jmeter運行情況。

點擊綠色三角啟動,或者左上角運行--啟動。

jmeter:

結果樹:綠色√表示成功了。

匯總報告:

服務器顯示:

 

由簡入繁,但最后明白了大道至簡。總之第一步成功了。

開心。

 

接下來的學習總結還會發布在博客園,希望自己能堅持下去。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM