<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: vuthanhnam94</title>
    <description>The latest articles on DEV Community by vuthanhnam94 (@vuthanhnam94).</description>
    <link>https://dev.to/vuthanhnam94</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F567107%2F16a2648e-9073-4886-84f4-cb3d2d2271bf.png</url>
      <title>DEV Community: vuthanhnam94</title>
      <link>https://dev.to/vuthanhnam94</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/vuthanhnam94"/>
    <language>en</language>
    <item>
      <title>How to install C++ with Visual Studio Code</title>
      <dc:creator>vuthanhnam94</dc:creator>
      <pubDate>Thu, 23 Sep 2021 06:57:42 +0000</pubDate>
      <link>https://dev.to/vuthanhnam94/how-to-install-c-with-visual-studio-code-49in</link>
      <guid>https://dev.to/vuthanhnam94/how-to-install-c-with-visual-studio-code-49in</guid>
      <description>&lt;p&gt;We need to download two things to run our C/C++ code.&lt;/p&gt;

&lt;p&gt;MinGW compiler — To compile the code or simply translate it into machine-readable language.&lt;br&gt;
Visual Studio Code — IDE in which we will write our program.&lt;br&gt;
Downloading MinGW Compiler&lt;br&gt;
Visit &lt;a href="https://sourceforge.net/projects/mingw/"&gt;https://sourceforge.net/projects/mingw/&lt;/a&gt; and click on download.&lt;br&gt;
Open the mingw-get-setup.exe file and go with the default installation. After installation MinGW Installation Manager window will shows up.&lt;br&gt;
MinGW Installation Manager&lt;/p&gt;

&lt;p&gt;Click on the checkbox to the left of mingw32-gcc-g++ (I have already downloaded it that’s why it is showing a green box) . Select Installation &amp;gt; Apply Changes &amp;gt; Apply from the menu bar.&lt;br&gt;
Installing compilers in MinGW Installation manager&lt;/p&gt;

&lt;p&gt;Editing PATH environment variable&lt;br&gt;
We need to include the directory C:\MinGW\bin in our system’s PATH environment variable to access the above directory by simply writing a command in CLI without writing the entire path.&lt;/p&gt;

&lt;p&gt;Search for “environment” in the search box. Click on Edit the system environment variables &amp;gt; Environment variables.&lt;br&gt;
Searching for environment variables&lt;/p&gt;

&lt;p&gt;After following the above steps, the Environment variables window will show up. Click on Path &amp;gt; Edit &amp;gt; New and paste C:\MinGW\bin. Click on Ok and you have successfully edited your PATH environment variable.&lt;br&gt;
Downloading and setting up VS Code&lt;br&gt;
As we have set up our compiler, now we’re all ready to download VSCode and write our first C/C++ program.&lt;/p&gt;

&lt;p&gt;Click here to download VS Code. After downloading open the setup file.&lt;br&gt;
Accept the agreement , check all the boxes shown in the picture, if you want you can also check the Create a desktop icon box and click on Next &amp;gt; Install . Congratulations, you have successfully installed VS Code on your machine.🎉&lt;br&gt;
VS Code setup window&lt;/p&gt;

&lt;p&gt;VS Code is all ready now to write our first code, but let’s download some important extensions to make our work even easier.&lt;/p&gt;

&lt;p&gt;Head over to the Extensions tab (Ctrl+Shift+X), and search “c/c++” , click on the first extension you see i.e. C/C++ by Microsoft and then Install .&lt;br&gt;
This extension adds language support for C/C++ to Visual Studio Code, including features such as IntelliSense and debugging.&lt;/p&gt;

&lt;p&gt;Now we’ll download yet another extension. Search for “Code Runner Jun Han” , click on the first extension you see and install it.&lt;br&gt;
This extension lets you run code snippets and code files for multiple languages like C, C++, Java, JS, PHP, Python, etc.&lt;/p&gt;

&lt;p&gt;To run our code in the integrated terminal of VS Code, we need to do one last thing. Go to the Settings tab (Ctrl+,) search “ code runner terminal ” and check the same box as shown in the picture.&lt;/p&gt;

&lt;p&gt;Congratulations, on following the article till the end, and successfully setting up the VSCode environment for C/C++ development.&lt;/p&gt;

&lt;h1&gt;
  
  
  ntechdevelopers
&lt;/h1&gt;

&lt;p&gt;&lt;a href="http://blog.ntechdevelopers.com/"&gt;http://blog.ntechdevelopers.com/&lt;/a&gt;&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Summary All Functions in C++</title>
      <dc:creator>vuthanhnam94</dc:creator>
      <pubDate>Fri, 17 Sep 2021 04:18:52 +0000</pubDate>
      <link>https://dev.to/vuthanhnam94/summary-all-functions-in-c-6g6</link>
      <guid>https://dev.to/vuthanhnam94/summary-all-functions-in-c-6g6</guid>
      <description>&lt;p&gt;&lt;a href="http://blog.ntechdevelopers.com/tong-hop-tat-ca-ham-trong-c/"&gt;http://blog.ntechdevelopers.com/tong-hop-tat-ca-ham-trong-c/&lt;/a&gt;&lt;/p&gt;

</description>
      <category>cpp</category>
    </item>
    <item>
      <title>How to Install Powerline on Windows 10</title>
      <dc:creator>vuthanhnam94</dc:creator>
      <pubDate>Sun, 12 Sep 2021 14:12:00 +0000</pubDate>
      <link>https://dev.to/vuthanhnam94/how-to-install-powerline-on-windows-10-cgn</link>
      <guid>https://dev.to/vuthanhnam94/how-to-install-powerline-on-windows-10-cgn</guid>
      <description>&lt;p&gt;Powerline uses glyphs in order to style the prompt. If your font does not include Powerline glyphs, you may see several Unicode replacement characters ‘▯’ throughout your prompt. Though Cascadia Mono does not include Powerline glyphs, you can install Cascadia Code PL or Cascadia Mono PL, which have the Powerline glyphs included. These fonts can be installed from the Cascadia Code GitHub releases page.&lt;/p&gt;

&lt;p&gt;&lt;a href="http://blog.ntechdevelopers.com/how-to-install-powerline-on-windows-10/"&gt;http://blog.ntechdevelopers.com/how-to-install-powerline-on-windows-10/&lt;/a&gt;&lt;/p&gt;

</description>
    </item>
    <item>
      <title>How to Install Cmder on Windows 10</title>
      <dc:creator>vuthanhnam94</dc:creator>
      <pubDate>Sun, 12 Sep 2021 14:11:04 +0000</pubDate>
      <link>https://dev.to/vuthanhnam94/how-to-install-cmder-on-windows-10-6jd</link>
      <guid>https://dev.to/vuthanhnam94/how-to-install-cmder-on-windows-10-6jd</guid>
      <description>&lt;p&gt;Cmder is a software package created out of pure frustration over the absence of nice console emulators on Windows. It is based on amazing software, and spiced up with the Monokai color scheme and a custom prompt layout, looking sexy from the start.&lt;/p&gt;

&lt;p&gt;&lt;a href="http://blog.ntechdevelopers.com/how-to-install-cmder-on-windows-10/"&gt;http://blog.ntechdevelopers.com/how-to-install-cmder-on-windows-10/&lt;/a&gt;&lt;/p&gt;

</description>
    </item>
    <item>
      <title>How to Install WSL 2 on Windows 10</title>
      <dc:creator>vuthanhnam94</dc:creator>
      <pubDate>Sun, 12 Sep 2021 10:24:05 +0000</pubDate>
      <link>https://dev.to/vuthanhnam94/how-to-install-wsl-2-on-windows-10-3pjd</link>
      <guid>https://dev.to/vuthanhnam94/how-to-install-wsl-2-on-windows-10-3pjd</guid>
      <description>&lt;p&gt;Requirements&lt;br&gt;
To install WSL 2 on Windows 10 you need the following things:&lt;br&gt;
– Windows 10 May 2020 (2004), Windows 10 May 2019 (1903), or Windows 10 November 2019 (1909) or later&lt;br&gt;
– A computer with Hyper-V Virtualization support&lt;/p&gt;

&lt;p&gt;Step 1. Enable WSL&lt;br&gt;
Step 2. Enable ‘Virtual Machine Platform’&lt;br&gt;
Step 3. Set WSL 2 as default&lt;br&gt;
Step 4. Install a distro&lt;br&gt;
Step 5. Install OS terminal&lt;/p&gt;

&lt;p&gt;&lt;a href="http://blog.ntechdevelopers.com/how-to-install-wsl-2-on-windows-10/"&gt;http://blog.ntechdevelopers.com/how-to-install-wsl-2-on-windows-10/&lt;/a&gt;&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Microsoft Certification Week | AZ-900</title>
      <dc:creator>vuthanhnam94</dc:creator>
      <pubDate>Sat, 11 Sep 2021 12:01:55 +0000</pubDate>
      <link>https://dev.to/vuthanhnam94/microsoft-certification-week-az-900-3olj</link>
      <guid>https://dev.to/vuthanhnam94/microsoft-certification-week-az-900-3olj</guid>
      <description>&lt;h2&gt;
  
  
  Microsoft Certification Week | AZ-900
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Topic: Azure Core Services and Solutions&lt;/strong&gt;&lt;br&gt;
&lt;a href="https://www.youtube.com/watch?v=8tgDd3-1JcI&amp;amp;list=PLKzgdQXYRdY3CsSogNRj5Iu07JMenHZOF"&gt;https://www.youtube.com/watch?v=8tgDd3-1JcI&amp;amp;list=PLKzgdQXYRdY3CsSogNRj5Iu07JMenHZOF&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Topic: Azure Management Tools and Networking&lt;/strong&gt;&lt;br&gt;
&lt;a href="https://www.youtube.com/watch?v=8ZvXMwf0DJY&amp;amp;list=PLKzgdQXYRdY3CsSogNRj5Iu07JMenHZOF&amp;amp;index=2"&gt;https://www.youtube.com/watch?v=8ZvXMwf0DJY&amp;amp;list=PLKzgdQXYRdY3CsSogNRj5Iu07JMenHZOF&amp;amp;index=2&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Topic: Azure identity, governance, privacy, compliance, and cost management&lt;/strong&gt;&lt;br&gt;
&lt;a href="https://www.youtube.com/watch?v=HNaonKh1Xu4&amp;amp;list=PLKzgdQXYRdY3CsSogNRj5Iu07JMenHZOF&amp;amp;index=3"&gt;https://www.youtube.com/watch?v=HNaonKh1Xu4&amp;amp;list=PLKzgdQXYRdY3CsSogNRj5Iu07JMenHZOF&amp;amp;index=3&lt;/a&gt;&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Citus Data - Tưởng dễ mà khó không tưởng</title>
      <dc:creator>vuthanhnam94</dc:creator>
      <pubDate>Sat, 30 Jan 2021 09:23:25 +0000</pubDate>
      <link>https://dev.to/vuthanhnam94/citus-data-t-ng-d-ma-kho-khong-t-ng-17la</link>
      <guid>https://dev.to/vuthanhnam94/citus-data-t-ng-d-ma-kho-khong-t-ng-17la</guid>
      <description>&lt;p&gt;Đây là loạt bài về Citus Data cũng như hệ quản trị cơ sở dữ liệu phân tán. Một trong những xu hướng mới khi kết hợp với microservices. Hi vọng loạt bài viết này sẽ giúp cho bạn hiểu được cái nhìn tổng quan nhất về cơ sở dữ liệu phân tán cũng như Citus Data&lt;/p&gt;

&lt;p&gt;Chia để trị, Xu hướng phân tán - Một xu hướng đi đâu cũng gặp!&lt;br&gt;
&lt;a href="http://blog.ntechdevelopers.com/chia-de-tri-xu-huong-phan-tan-mot-xu-huong-di-dau-cung-gap/"&gt;http://blog.ntechdevelopers.com/chia-de-tri-xu-huong-phan-tan-mot-xu-huong-di-dau-cung-gap/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Citus data (cơ sở dữ liệu phân tán) và câu chuyện tăng hiệu năng&lt;br&gt;
&lt;a href="http://blog.ntechdevelopers.com/citus-data-va-cau-chuyen-tang-hieu-nang-phan-1/"&gt;http://blog.ntechdevelopers.com/citus-data-va-cau-chuyen-tang-hieu-nang-phan-1/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;PostgreSQL liệu có như tuyên bố "Cơ sở dữ liệu mã nguồn mở tiên tiến nhất thế giới"&lt;br&gt;
&lt;a href="http://blog.ntechdevelopers.com/postgresql-lieu-co-nhu-tuyen-bo-co-so-du-lieu-ma-nguon-mo-tien-tien-nhat-the-gioi/"&gt;http://blog.ntechdevelopers.com/postgresql-lieu-co-nhu-tuyen-bo-co-so-du-lieu-ma-nguon-mo-tien-tien-nhat-the-gioi/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Citus Data - Phải chăng bạn có nên sử dụng nó hay không?&lt;br&gt;
&lt;a href="http://blog.ntechdevelopers.com/citus-data-phai-chang-ban-co-nen-su-dung-no-hay-khong/"&gt;http://blog.ntechdevelopers.com/citus-data-phai-chang-ban-co-nen-su-dung-no-hay-khong/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Xây dựng web app multi-tenant đơn giản với Citus data và AspNet Core&lt;br&gt;
&lt;a href="http://blog.ntechdevelopers.com/xay-dung-web-app-multi-tenant-don-gian-voi-citus-data-va-aspnet-core/"&gt;http://blog.ntechdevelopers.com/xay-dung-web-app-multi-tenant-don-gian-voi-citus-data-va-aspnet-core/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Hiểu về Sharding trong Citus Data&lt;br&gt;
&lt;a href="http://blog.ntechdevelopers.com/hieu-ve-sharding-trong-citus-data/"&gt;http://blog.ntechdevelopers.com/hieu-ve-sharding-trong-citus-data/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Sharding trong Citus Data không hề đơn giản như bạn nghĩ&lt;br&gt;
&lt;a href="http://blog.ntechdevelopers.com/sharding-trong-citus-data-khong-he-don-gian-nhu-ban-nghi/"&gt;http://blog.ntechdevelopers.com/sharding-trong-citus-data-khong-he-don-gian-nhu-ban-nghi/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Xây dựng real-time analytics dashboards với Postgres và Citus&lt;br&gt;
&lt;a href="http://blog.ntechdevelopers.com/xay-dung-real-time-analytics-dashboards-voi-postgres-va-citus/"&gt;http://blog.ntechdevelopers.com/xay-dung-real-time-analytics-dashboards-voi-postgres-va-citus/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;--&lt;br&gt;
 Source code: Github&lt;br&gt;
&lt;a href="https://github.com/vuthanhnam94/ntech.citusdata"&gt;https://github.com/vuthanhnam94/ntech.citusdata&lt;/a&gt;&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Tổng kết chiến dịch kiểm thử hiệu năng spiderum</title>
      <dc:creator>vuthanhnam94</dc:creator>
      <pubDate>Sat, 30 Jan 2021 09:23:02 +0000</pubDate>
      <link>https://dev.to/vuthanhnam94/t-ng-k-t-chi-n-d-ch-ki-m-th-hi-u-nang-spiderum-57f3</link>
      <guid>https://dev.to/vuthanhnam94/t-ng-k-t-chi-n-d-ch-ki-m-th-hi-u-nang-spiderum-57f3</guid>
      <description>&lt;p&gt;Đây là bài tổng kết của series kiểm thử hiệu năng lần này. Một lần nữa hi vọng loạt bài này giúp ích được các bạn một chút nào đó.&lt;/p&gt;

&lt;p&gt;Series Kiểm Thử Hiệu Năng Spiderum:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Bài viết thứ nhất: Lỗ hổng spiderum hay chỉ là tính năng – Cái nhìn từ một Performance testing
&lt;a href="http://blog.ntechdevelopers.com/lo-hong-spiderum-hay-chi-la-tinh-nang-cai-nhin-tu-mot-performance-testing/"&gt;http://blog.ntechdevelopers.com/lo-hong-spiderum-hay-chi-la-tinh-nang-cai-nhin-tu-mot-performance-testing/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Bài viết thứ 2: Performance testing – Nó là cái quái gì mà lại dùng nó để vọc phá spiderum
&lt;a href="http://blog.ntechdevelopers.com/performance-testing-no-la-cai-quai-gi-ma-lai-dung-no-de-voc-pha-spiderum/"&gt;http://blog.ntechdevelopers.com/performance-testing-no-la-cai-quai-gi-ma-lai-dung-no-de-voc-pha-spiderum/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Bài viết thứ 3: Chiến lược kiểm thử hiệu năng Spiderum - Kịch bản chức năng
&lt;a href="http://blog.ntechdevelopers.com/len-ke-hoach-chien-luoc-kiem-thu-hieu-nang-spiderum/"&gt;http://blog.ntechdevelopers.com/len-ke-hoach-chien-luoc-kiem-thu-hieu-nang-spiderum/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Bài viết thử 4: Chiến lược kiểm thử hiệu năng Spiderum - Đừng vội! hãy hiểu bản chất vấn đề với API Testing
&lt;a href="http://blog.ntechdevelopers.com/chien-luoc-kiem-thu-hieu-nang-spiderum-dung-voi-hay-hieu-ban-chat-van-de-voi-api-testing/"&gt;http://blog.ntechdevelopers.com/chien-luoc-kiem-thu-hieu-nang-spiderum-dung-voi-hay-hieu-ban-chat-van-de-voi-api-testing/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Bài viết thứ 5: Chiến lược kiểm thử hiệu năng Spiderum – Performance tesing thật vi diệu
&lt;a href="http://blog.ntechdevelopers.com/chien-luoc-kiem-thu-hieu-nang-spiderum-performance-tesing-that-vi-dieu/"&gt;http://blog.ntechdevelopers.com/chien-luoc-kiem-thu-hieu-nang-spiderum-performance-tesing-that-vi-dieu/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Bài viết thứ 6: Bắt đầu chiến dịch – Phát hiện một số tính năng nhỏ với Manual Testing
&lt;a href="http://blog.ntechdevelopers.com/bat-dau-chien-dich-phat-hien-mot-so-tinh-nang-nho-voi-manual-testing/"&gt;http://blog.ntechdevelopers.com/bat-dau-chien-dich-phat-hien-mot-so-tinh-nang-nho-voi-manual-testing/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Bài viết thứ 7: Bắt đầu chiến dịch – Tôi kiểm thử API của spiderum như thế nào
&lt;a href="http://blog.ntechdevelopers.com/bat-dau-chien-dich-toi-kiem-thu-api-cua-spiderum-nhu-the-nao/"&gt;http://blog.ntechdevelopers.com/bat-dau-chien-dich-toi-kiem-thu-api-cua-spiderum-nhu-the-nao/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Bài viết thứ 8: Bắt đầu chiến dịch – Cách lấy dữ liệu spiderum thông qua Postman
&lt;a href="http://blog.ntechdevelopers.com/bat-dau-chien-dich-cach-lay-du-lieu-spiderum-thong-qua-postman/"&gt;http://blog.ntechdevelopers.com/bat-dau-chien-dich-cach-lay-du-lieu-spiderum-thong-qua-postman/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Bài viết thứ 9: Jmeter và thế giới Performance Testing
&lt;a href="http://blog.ntechdevelopers.com/jmeter-va-the-gioi-performance-testing/"&gt;http://blog.ntechdevelopers.com/jmeter-va-the-gioi-performance-testing/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Bài viết thứ 10: Record script spiderum – Cách mà tôi tạo ra script performance test
&lt;a href="http://blog.ntechdevelopers.com/record-script-spiderum-cach-ma-toi-tao-ra-script-performance-test/"&gt;http://blog.ntechdevelopers.com/record-script-spiderum-cach-ma-toi-tao-ra-script-performance-test/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Bài viết thứ 11: Update script jmeter spiderum – Cách mà tôi tổ chức cấu trúc kịch bản kiểm thử
&lt;a href="http://blog.ntechdevelopers.com/update-script-jmeter-spiderum-cach-ma-toi-to-chuc-cau-truc-kich-ban-kiem-thu/"&gt;http://blog.ntechdevelopers.com/update-script-jmeter-spiderum-cach-ma-toi-to-chuc-cau-truc-kich-ban-kiem-thu/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Bài viết thứ 12: Update script jmeter spiderum - Script Performance Test không phải chỉ record là xong! Còn nhiều thứ hay ho lắm
&lt;a href="http://blog.ntechdevelopers.com/update-script-jmeter-spiderum-script-performance-test-khong-phai-chi-record-la-xong-con-nhieu-thu-hay-ho-lam/"&gt;http://blog.ntechdevelopers.com/update-script-jmeter-spiderum-script-performance-test-khong-phai-chi-record-la-xong-con-nhieu-thu-hay-ho-lam/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Bài viết thứ 13: Update script jmeter spiderum - Làm sao để có thể chuẩn bị data cho cả triệu CCUs
&lt;a href="http://blog.ntechdevelopers.com/update-script-jmeter-spiderum-lam-sao-de-co-the-chuan-bi-data-cho-ca-trieu-ccus/"&gt;http://blog.ntechdevelopers.com/update-script-jmeter-spiderum-lam-sao-de-co-the-chuan-bi-data-cho-ca-trieu-ccus/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Bài viết thứ 14: Bắt đầu chạy kiểm thử hiệu năng - Chúc mừng bạn đã nằm trong tầm ngắm của tôi
&lt;a href="http://blog.ntechdevelopers.com/bat-dau-chay-kiem-thu-hieu-nang-chuc-mung-ban-da-nam-trong-tam-ngam-cua-toi/"&gt;http://blog.ntechdevelopers.com/bat-dau-chay-kiem-thu-hieu-nang-chuc-mung-ban-da-nam-trong-tam-ngam-cua-toi/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Bài viết thứ 15: Báo cáo kiểm thử hiệu năng spiderum và phân tích báo cáo sau khi chạy script
&lt;a href="http://blog.ntechdevelopers.com/bao-cao-kiem-thu-hieu-nang-spiderum-va-phan-tich-bao-cao-sau-khi-chay-script/"&gt;http://blog.ntechdevelopers.com/bao-cao-kiem-thu-hieu-nang-spiderum-va-phan-tich-bao-cao-sau-khi-chay-script/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Bài viết thứ 16: Tổng kết chiến dịch kiểm thử hiệu năng spiderum
&lt;a href="http://blog.ntechdevelopers.com/tong-ket-chien-dich-kiem-thu-hieu-nang-spiderum/"&gt;http://blog.ntechdevelopers.com/tong-ket-chien-dich-kiem-thu-hieu-nang-spiderum/&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Tổng hợp Issue&lt;/p&gt;

&lt;p&gt;Issue phát hiện từ manual test:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Không xác thực khi quên mật khẩu&lt;/li&gt;
&lt;li&gt;Không có duyệt bài hoặc chặn post bài auto&lt;/li&gt;
&lt;li&gt;Không thể xem thêm tin nổi bật&lt;/li&gt;
&lt;li&gt;Không chặn upvote/downvote liên tục&lt;/li&gt;
&lt;li&gt;Đếm số lượng upvote trong thông báo sai chỉ dựa trên số lượng click upvote chứ không tính trung bình&lt;/li&gt;
&lt;li&gt;Trả lời bình luận đệ quy quá nhiều khiến vỡ layout&lt;/li&gt;
&lt;li&gt;Chức năng tìm kiếm không thực sự là chứa từ tìm kiếm&lt;/li&gt;
&lt;li&gt;Mặc dù xóa hết bình luận rồi nhưng trong trang cá nhân vẫn đếm được số bình luận và số trang&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Issue phát hiện từ api test:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;End point /api/v2/message/requestSingleChat không có phân trang, khi có lượng chat nhiều call sẽ bị timeout&lt;/li&gt;
&lt;li&gt;End point /api/v1/post/create có thể tạo bài viết bao nhiêu tag tùy thích&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Issue phát hiện từ performance test:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Response time cao ở bước kiểm tra home page, kiểm tra domain topUser hay không&lt;/li&gt;
&lt;li&gt;Tỉ lệ lỗi ở bước tìm kiếm và upvote/downvote còn cao&lt;/li&gt;
&lt;li&gt;Độ lệch giữa lần đầu login và các lần sau còn cao&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Toàn bộ script, data test, report cho chiến dịch lần này mình đều để hết trên github cá nhân của mình nhé!&lt;br&gt;
&lt;a href="https://github.com/vuthanhnam94/performance.spiderum"&gt;https://github.com/vuthanhnam94/performance.spiderum&lt;/a&gt;&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Lương - Minh bạch hay bí mật? </title>
      <dc:creator>vuthanhnam94</dc:creator>
      <pubDate>Sat, 30 Jan 2021 09:22:14 +0000</pubDate>
      <link>https://dev.to/vuthanhnam94/l-ng-minh-b-ch-hay-bi-m-t-3bl1</link>
      <guid>https://dev.to/vuthanhnam94/l-ng-minh-b-ch-hay-bi-m-t-3bl1</guid>
      <description>&lt;p&gt;Bạn được trả lương bao nhiêu&lt;br&gt;
Đừng nói ra thành lời, hãy giữ con số đó trong đầu bạn&lt;br&gt;
Giờ thì hãy nghĩ bạn bè của bạn được trả lương bao nhiêu?&lt;br&gt;
Ở nơi làm việc, đồng nghiệp ngồi cùng phòng hoặc ngồi ngay bên cạnh bạn được trả bao nhiêu?&lt;br&gt;
Bạn có biết được không?&lt;br&gt;
Bạn có nên biết không nhỉ?&lt;br&gt;
Thật ra, khi hỏi các bạn mấy câu đó ngay bản thân mình còn thấy không thoải mái&lt;br&gt;
Nhưng phải công nhận một điều ai cũng muốn biết đúng không.&lt;br&gt;
Hầu hết chúng ta thấy khó chịu với việc phái công khai lương của mình mặc dù chỉ là ý nghĩ trong đâu&lt;/p&gt;

&lt;p&gt;&lt;a href="http://blog.ntechdevelopers.com/luong-minh-bach-hay-bi-mat-ly-do-phia-sau-no-va-con-duong-phia-truoc-ban/"&gt;http://blog.ntechdevelopers.com/luong-minh-bach-hay-bi-mat-ly-do-phia-sau-no-va-con-duong-phia-truoc-ban/&lt;/a&gt;&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Thanh tiến trình (Progress bar) - Liệu nó có phải một cú lừa!</title>
      <dc:creator>vuthanhnam94</dc:creator>
      <pubDate>Mon, 25 Jan 2021 15:39:12 +0000</pubDate>
      <link>https://dev.to/vuthanhnam94/thanh-ti-n-trinh-progress-bar-li-u-no-co-ph-i-m-t-cu-l-a-5hm9</link>
      <guid>https://dev.to/vuthanhnam94/thanh-ti-n-trinh-progress-bar-li-u-no-co-ph-i-m-t-cu-l-a-5hm9</guid>
      <description>&lt;p&gt;Bao nhiêu người chán nản tại bàn trong bao nhiêu giờ mỗi ngày và bao nhiêu ngày mỗi tuần, và bao tuần mỗi năm trong bao nhiêu năm trong đời? &lt;br&gt;
Thanh tiến độ là một công cụ chỉ báo trên máy tính về thứ gì đó đang diễn ra bên trong. Theo wikimedia, Thanh tiến trình là một thành tố điều khiển dùng để biểu diễn sự tiến triển của một thao tác tính toán kéo dài như tải xuống, truyền tệp tin hoặc cài đặt. Đôi khi bổ sung cho phần đồ hoạ còn có dạng chữ của tiến độ theo phần trăm.&lt;br&gt;
Loại cổ điển được dùng suốt nhiều năm là thanh ngang. Ý mình là, thanh này có từ những phiên bản tiền máy tính trên sổ cái, mọi người sẽ điền vào một thanh ngang từ trái sang phải để biểu thị bao nhiêu phần công việc đã hoàn thành tại nhà máy. Đây là một thứ tương tự trên màn hình. &lt;/p&gt;

&lt;p&gt;Điều đã diễn ra những năm 70 thường được nhắc tới như "cuộc khủng hoảng phần mềm" khi mà đột nhiên, các máy tính trở nên phức tạp hơn nhanh hơn những gì mà người thiết kế ra nó dự đoán. Mọi người đã sử dụng chỉ báo phần trăm hoàn thành theo những cách khác nhau. &lt;/p&gt;

&lt;p&gt;&lt;a href="http://blog.ntechdevelopers.com/thanh-tien-trinh-progress-bar-lieu-no-co-phai-mot-cu-lua/"&gt;http://blog.ntechdevelopers.com/thanh-tien-trinh-progress-bar-lieu-no-co-phai-mot-cu-lua/&lt;/a&gt;&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Agile, Đâu chỉ riêng trong phát triển phần mềm</title>
      <dc:creator>vuthanhnam94</dc:creator>
      <pubDate>Mon, 25 Jan 2021 15:37:36 +0000</pubDate>
      <link>https://dev.to/vuthanhnam94/agile-dau-ch-rieng-trong-phat-tri-n-ph-n-m-m-39np</link>
      <guid>https://dev.to/vuthanhnam94/agile-dau-ch-rieng-trong-phat-tri-n-ph-n-m-m-39np</guid>
      <description>&lt;p&gt;Nếu bạn là một lập trình viên chắc hẳn bạn không hề xa lạ gì với thuật ngữ agile hay scrum. Nhìn chung nó là một phương pháp để phát triển phần mềm thôi. Tuy nhiên, ở bài viết này mình lại muốn giới thiệu cho các bạn cách vận dụng phương pháp này trong quản lý cá nhân. Hi vọng nó sẽ giúp bạn nảy lên một ý tưởng giúp bản thân mình tốt hơn!&lt;/p&gt;

&lt;p&gt;Đầu tiên, dù không phải là một lập trình viên thì bạn cũng nên biết sơ qua Agile là gì đã nhỉ.&lt;/p&gt;

&lt;p&gt;Ban đầu, phát triển phần mềm thường được chạy theo mô hình thác nước (Waterfall) nó phân chia quá trình phát triển phần mềm thành những giai đoạn độc lập, do đó phát sinh những vấn đề lãng phí, phản ứng kém với những thay đổi trong yêu cầu bởi khối lượng phản hồi lớn tại thời điểm trễ. &lt;br&gt;
Vấn đề nảy sinh khi phát triển phần mềm cần linh hoạt, khi đó agile ra đời. Agile là phương pháp phát triển phần mềm hiện đại, nhằm giải quyết tận gốc những vấn đề tồn tại của phương pháp phát triển phần mềm truyền thống. Agile tập trung vào cá nhân và sự tương tác hơn là quy trình và công cụ. Phần mềm chạy tốt hơn là tài liệu đầy đủ. Cộng tác với khách hàng hơn là đàm phán hợp đồng. Phản hồi với các thay đổi hơn là bám sát kế hoạch.&lt;/p&gt;

&lt;p&gt;Ta có thể hiểu Agile là một tập rule, không định nghĩa một phương pháp cụ thể để đạt được những điều này, nhưng lại có nhiều phương pháp phát triển phần mềm khác nhau thỏa mãn và hướng theo các tiêu chí đó.&lt;/p&gt;

&lt;p&gt;Scrum là Là một thành viên của họ Agile. Scrum được xây dựng dựa trên lý thuyết quản lý tiến trình thực nghiệm (empirical process control), hay còn gọi là thực nghiệm luận (empiricism). Lý thuyết này chỉ ra rằng tri thức đến từ kinh nghiệm và việc ra quyết định được dựa trên những gì đã biết. Điều này sẽ giúp giảm thiểu rủi ro và tăng tính chính xác đặc biệt là trong môi trường phát triển phần mềm nhiều biến động.&lt;/p&gt;

&lt;p&gt;Hơi khó hiểu nhỉ, mình sẽ đưa ra ví dụ đơn giản nhé!&lt;br&gt;
Ví dụ đơn giản nhất cho khái niệm Scrum đó là những đàn chim di cư. Chúng không hề có kế hoạch chi tiết cho hành trình của mình. Nhưng vẫn vượt qua được hàng chục nghìn km mỗi năm qua những vùng đất xa lạ nhờ việc quan sát và thích nghi liên tục với điều kiện khí hậu thức ăn. Nơi trú ngụ của từng vùng...&lt;/p&gt;

&lt;p&gt;&lt;a href="http://blog.ntechdevelopers.com/agile-dau-chi-rieng-trong-phat-trien-phan-mem/"&gt;http://blog.ntechdevelopers.com/agile-dau-chi-rieng-trong-phat-trien-phan-mem/&lt;/a&gt;&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Unit test, chuyện chẳng của riêng devs nào!</title>
      <dc:creator>vuthanhnam94</dc:creator>
      <pubDate>Mon, 25 Jan 2021 15:32:28 +0000</pubDate>
      <link>https://dev.to/vuthanhnam94/unit-test-chuy-n-ch-ng-c-a-rieng-devs-nao-70i</link>
      <guid>https://dev.to/vuthanhnam94/unit-test-chuy-n-ch-ng-c-a-rieng-devs-nao-70i</guid>
      <description>&lt;p&gt;Câu chuyện về unit test cho mỗi dev thì chẳng phải của riêng ai, nhất là khi bạn còn phải cover cả unit test cho những function của những người đồng đội của mình.&lt;/p&gt;

&lt;p&gt;Nếu ai đó chưa biết về unit test thì mình có thể định nghĩa nhanh và đơn giản như sau:&lt;br&gt;
Trong kiểm thử phần mềm có 4 mức độ kiểm thử: Unit test ( kiểm thử mức đơn vị), Intergration test ( kiểm thử tích hợp), System test (kiểm thử hệ thống), Acceptance test (kiểm thử chấp nhận).&lt;/p&gt;

&lt;p&gt;Unit Test là gì?&lt;br&gt;
Unit Test là một loại kiểm thử phần mềm trong đó các đơn vị hay thành phần riêng lẻ của phần mềm được kiểm thử. Kiểm thử đơn vị được thực hiện trong quá trình phát triển ứng dụng. Mục tiêu của Kiểm thử đơn vị là cô lập một phần code và xác minh tính chính xác của đơn vị đó.&lt;br&gt;
Unit là gì?&lt;br&gt;
Một Unit là một thành phần PM nhỏ nhất mà ta có thể kiểm tra được như các hàm (Function), thủ tục (Procedure), lớp (Class), hoặc các phương thức (Method).&lt;/p&gt;

&lt;p&gt;Lợi ích của Unit test&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Viết Unit test tốt giúp tăng sự tin tưởng vào mã nguồn được thay đổi hoặc bảo trì. Bởi lẽ, nếu viết Unit test tốt, mỗi lần có sự thay đổi bên trong mã nguồn và chạy unit test, chúng ta có thể bắt được những lỗi sảy ra do thay đổi mã nguồn.&lt;/li&gt;
&lt;li&gt;Chúng ta có thể kiểm thử từng thành phần riêng rẽ của dự án mà không cần đợi các thành phần khác hoàn thành.&lt;/li&gt;
&lt;li&gt;Do thực hiện test trên từng đơn vị nhỏ của các module riêng rẽ nên khi phát hiện lỗi cũng dễ dàng khoanh vùng và sửa chữa.&lt;/li&gt;
&lt;li&gt;Có thể tái sử dụng mã nguồn&lt;/li&gt;
&lt;li&gt;Chi phí cho việc sửa chữa lỗi trong giai đoạn unit test sẽ ít hơn so với các giai đoạn sau&lt;/li&gt;
&lt;li&gt;Mã nguồn đáng tin cậy hơn nếu viết tốt unit test&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Khi làm Unit test chúng ta thường thấy các khái niệm sau:&lt;br&gt;
Assertion: Là một phát biểu mô tả các công việc kiểm tra cần tiến hành, thí dụ: AreEqual(), IsTrue(), IsNotNull()… Mỗi một UT gồm nhiều assertion kiểm tra dữ liệu đầu ra, tính chính xác của các lỗi ngoại lệ ra và các vấn đề phức tạp khác như: – Sự tồn tại của một đối tượng – Điều kiện biên: Các giá trị có vượt ra ngoài giới hạn hay không – Thứ tự thực hiện của các luồng dữ liệu …&lt;br&gt;
Test Point: Là một đơn vị kiểm tra nhỏ nhất, chỉ chứa đơn giản một assertion nhằm khẳng định tính đúng đắn của một chi tiết mã nào đó. Mọi thành viên dự án đều có thể viết một test point. Test Case: Là một tập hợp các test point nhằm kiểm tra một đặc điểm chức năng cụ thể, thí dụ toàn bộ giai đoạn người dùng nhập dữ liệu cho đến khi thông tin được nhập vào cơ sở dữ liệu. Trong nhiều trường hợp kiểm tra đặc biệt và khẩn cấp có thể không cần đến test case.&lt;br&gt;
Test Suite: Là một tập hợp các test case định nghĩa cho từng module hoặc hệ thống con.&lt;br&gt;
Regression Testing (hoặc Automated Testing): Là phương pháp kiểm nghiệm tự động sử dụng một phần mềm đặc biệt. Cùng một loại dữ liệu kiểm tra giống nhau nhưng được tiến hành nhiều lần lặp lại tự động nhằm ngăn chặn các lỗi cũ phát sinh trở lại. Kết hợp Regression Testing với Unit Testing sẽ đảm bảo các đoạn mã mới vẫn đáp ứng yêu cầu thay đổi và các đoạn mã cũ sẽ không bị ảnh hưởng bởi các hoạt động bảo trì.&lt;br&gt;
Production Code: Phần mã chính của ứng dụng được chuyển giao cho khách hàng.&lt;br&gt;
Unit Testing Code: Phần mã phụ để kiểm tra mã ứng dụng chính, không được chuyển giao cho khách hàng.&lt;/p&gt;

&lt;p&gt;Một số lưu ý khi viết Unit test&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Chắc chắn rằng mỗi test case kiểm thử mức đơn vị sẽ độc lập với những test case khác. Không nên gọi một test case khác trong một test case. Test case không nên phụ thuộc vào nhau cả về data và thứ tự thực hiện.&lt;/li&gt;
&lt;li&gt;Luôn luôn kiểm tra từng mô-đun một cách độc lập. Nếu không, sẽ có nhiều sự chồng chéo giữa các ca thử nghiệm và việc thay đổi đối với một đơn vị có thể ảnh hưởng đến tất cả các mô-đun khác và khiến phần mềm bị lỗi.&lt;/li&gt;
&lt;li&gt;Đặt tên các đơn vị kiểm thử một cách rõ ràng và nhất quán. Đảm bảo rằng các test case dễ đọc, bất kỳ ai cũng có thể chọn test case và chạy nó mà không gặp bất kỳ vấn đề nào.&lt;/li&gt;
&lt;li&gt;Khi triển khai việc thay đổi giao diện hoặc chức năng, cần chạy lại các test case trước đó nhằm đảm bảo việc thay đổi này không làm ảnh hưởng đến những test case cũ đã pass.&lt;/li&gt;
&lt;li&gt;Luôn đảm bảo lỗi được xác định trong quá trình Unit test được sửa trước khi chuyển sang giai đoạn tiếp theo.&lt;/li&gt;
&lt;li&gt;Không cố gắng viết test case để kiểm thử tất cả mọi thứ, thay vào đó nên tập chung vào kiểm thử sự ảnh hưởng của hành vi hệ thống&lt;/li&gt;
&lt;li&gt;Bên cạnh viết test case để test hành vi hệ thống, cần viết thêm test case để kiểm thử hiệu năng của mã nguồn&lt;/li&gt;
&lt;li&gt;Các testsuit nên đặt riêng ra, độc lập code với module&lt;/li&gt;
&lt;li&gt;Không nên có nhiều assert trong một test case vì khi một điều kiện không thỏa mãn thì các assert khác sẽ bị bỏ qua&lt;/li&gt;
&lt;li&gt;Sau một thời gian dài, số lượng test case nhiều, thời gian chạy lớn. Nên chia ra nhóm test case cũ và test case mới, test case cũ sẽ chạy với tần xuất ít hơn&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Trên đây là tóm lược sơ bộ về các định nghĩa của unit test, bài viết sau mình sẽ trình bày cụ thể các công cụ để viết unit test và ví dụ minh họa&lt;/p&gt;

&lt;p&gt;&lt;a href="http://blog.ntechdevelopers.com/unit-test-chuyen-chang-cua-rieng-devs-nao/"&gt;http://blog.ntechdevelopers.com/unit-test-chuyen-chang-cua-rieng-devs-nao/&lt;/a&gt;&lt;/p&gt;

</description>
    </item>
  </channel>
</rss>
