Load Test: Tạo project với Visual Studio 2017 Enterprise

Để chạy Load test trên Visual Studio bạn cần cài đặt Web performance and load testing tools, nếu bạn chưa cài đặt thì chúng ta bắt đầu từ nó trước nhé:
Để cài đặt bạn cần có Visual Studio Enterprise 2017

Để tải Web performance and load testing tools bạn thực hiện theo các bước sau:

1. Mở Visual Studio, trên thanh menu bar chọn Tools > Get Tools and Features…
2. Trong Visual Studio Installer chọn Individual components sau đó scroll xuống Debugging and testing chọn Web performance and load testing tools

3. Chọn Modify button
Web performance an load testing tools sẽ được cài đặt

Bây giờ đến lúc chúng ta tạo project để load test nhé. Các bạn có thể load test một trang bất kì hoặc một ở local để test ở đây mình sẽ test trang Anhdev.com của mình.

Tạo project

1. Mở Visual Studio, chọn File > New > Project từ menu bar.
New Project dialog box sẽ được mở
2. Trong New Project diablog box, mở rộng Installed và Visual C#, và chọn Test category, chọn Web Performance and Load Test Project

3. Nhập tên project của bạn và chọn OK

Visual Studio sẽ tạo project và hiển thị các files trong Solution Explorer. Trong project sẽ có 1 file là WebTest1.webtest

Trước khi cài đặt và load test thì ta cần config WebTest1 trước:

Chọn cửa sổ WebTest1.webtest click chuột phải vào WebTest1 sau đó chọn Add Request

Nó sẽ tự động tạo link là http://localhost/
Giờ bạn thay Url này trong Properties của WebTest1 thành link mà bạn muốn test nhé:

Giờ click button Add Recording để bắt đầu record nếu bạn chỉ cần tải trang hay vào trang bạn này ở dây mình muốn test anhdev.com:

Sau đó bạn có thể tắt trang đi và chọn Stop recording
Lưu ý: Có rất nhiều kịch bản test không nhất thiết phải là load trang ở đây mình muôn kiểm tra khi load trang nên mình chỉ cần vào trang web và đợi nó load hết là đủ
Vậy là xong phần WebTest1 tiếp theo là setting Load test.

Thêm một load test vào project

1. Trong Solution Explorer bạn click chuột phải vào project chọn Add > Load Test

New Load Test Wizard được mở.
2. Chọn On-premises Load Test, sau đó chọn Next

3. Chọn Next cho đến Load Pattern chọn Step load ở đây có 4 chỉ số:
Start user count: Là số user bắt đầu.
Step duration: thời gian nhảy sang bước tiếp theo.
Step user count: Số user tăng lên ở bước tiếp theo.
Maximum user count: Tổng số user (Tối đa)

4. Sau đó chọn Next tiếp đến Test Mix, chọn Add
Add Tests dialog box mở ra.
5. Bên dưới Available tests, chọn WebTest1, và sau đó chọn mũi tên bên phải (right arrow) để chuyển nó sang Selected tests. Chọn OK

Chọn Finish và LoadTest đã cài đặt xong.

Chạy load test

Giờ là lúc chạy load test click chuột phải vào LoadTest1 chọn Run Load Test

Trong khi nó chạy sẽ như thế này:

Bạn sẽ cần đợi một thời gian để nó chạy xong và đợi kết quả thôi.

Kết quả load test:

Thống kê load test

Và đồ thị

Đây chỉ là demo về việc làm sao để chạy load test.
Ở bài sau mình sẽ nói kỹ hơn một chút về ý nghĩa của các chỉ số.
Và chúng ta sẽ chọn phải tìm hiểu về Controller cũng như Agent nữa. Ý nghĩa của nó như thế nào mình sẽ nói ở bài sau nhé.

Bài viết tham khảo: Quickstart: Create a load test project

Những điều trường học không dậy bạn

Năm nay là năm khởi đầu của các em 2k thế là lại bắt đầu một thế hệ mới và mình thì càng già đi. Cũng già phết rồi chứ ra trường rồi, đi làm 1-2 năm rồi. Nhớ lại quãng thời gian mới ra trường đi làm cho đến bây giờ thì có khá nhiều thứ hay ho mà trong trường mình chưa từng biết. Các bạn có muốn biết là gì không nhất là các em đang còn đi học.

Trong trường code là để chạy, đi làm code vẫn là để chạy nhưng phải ngon :))
Trong trường code biến gán a, b, c, x, y ,z cũng được miễn là chạy là ra kết quả các thầy cũng chả nói gì. Thế mới sướng nhỉ. Thật ra chả sướng đâu đi làm mà đặt tên biến thế cũng bị ăn chửi SML. Mà cũng chả ai đặt tên biến thế đâu nhưng thực sự để đặt tên biến tên hàm mà ai đọc phát hiểu luôn cũng rất đau đầu đó.

Trong trường bạn code không có ai review, đi làm bạn sẽ phải học rất nhiều để code ngon hơn
Như mình đã nói trong trường bạn code để chạy được là được thầy cô gần như không review code và chỉ cho bạn chỗ nào không hợp lý, làm sao code dễ đọc hơn, flow code thế nào, hoặc cũng chẳng cần quan tâm bạn có hardcode không.
Đi làm thì khác code phải có flow rõ ràng, dễ hiểu, code không được dublicate.

Trong trường code để cho chạy bạn có thể dublicate code mọi nơi thậm chí lười những chức năng giống nhau cũng không gom lại thành 1 function và kệ đó, đi làm bạn code như thế là chết rồi đó
Khi đi làm cần tối ưu code (refactor) nên hay cố gắng suy nghĩ một flow rõ ràng trước, hiểu mình code gì, để làm gì. Bạn nên tìm hiểu về SOLID. Trong đó nguyên lý đầu tiên chính là Single responsibility principle tức là mỗi class chỉ nên giữ một trách nghiệm duy nhất. Hãy biết phân tích và chia trách nghiệm một cách hợp lý nếu cứ để dublicate code bạn sẽ rơi vào vòng luẩn quẩn code và fix bug thậm trí có những bug rất ngớ ngẩn do bỏ sót một đoạn bạn chưa sửa

Tạm thời mình mới nghĩ ra nhiêu đó thôi 😀