<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	xmlns:series="https://publishpress.com/"
	>

<channel>
	<title>Test Archives - Tomoshare</title>
	<atom:link href="https://blog.tomosia.com.vn/danh-muc/test/feed/" rel="self" type="application/rss+xml" />
	<link>https://blog.tomosia.com.vn/danh-muc/test/</link>
	<description>Kênh chia sẻ kiến thức Tomosia Việt Nam</description>
	<lastBuildDate>Fri, 24 Oct 2025 02:09:13 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.9.4</generator>

<image>
	<url>https://blog.tomosia.com.vn/wp-content/uploads/2023/09/cropped-icon-32x32.png</url>
	<title>Test Archives - Tomoshare</title>
	<link>https://blog.tomosia.com.vn/danh-muc/test/</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Stress Test with AWS Worker</title>
		<link>https://blog.tomosia.com.vn/stress-test-with-aws-worker/</link>
					<comments>https://blog.tomosia.com.vn/stress-test-with-aws-worker/#comments</comments>
		
		<dc:creator><![CDATA[phi lai]]></dc:creator>
		<pubDate>Thu, 23 Oct 2025 10:37:36 +0000</pubDate>
				<category><![CDATA[Stress Test]]></category>
		<guid isPermaLink="false">https://blog.tomosia.com.vn/?p=3457</guid>

					<description><![CDATA[<p>1. Mục tiêu của stress test chịu tải trong hệ thống (AWS EC2 Worker và SQS) Khi hệ&#8230;</p>
<p>The post <a href="https://blog.tomosia.com.vn/stress-test-with-aws-worker/">Stress Test with AWS Worker</a> appeared first on <a href="https://blog.tomosia.com.vn">Tomoshare</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<h3 id="1-muc-tieu-cua-stress-test-chiu-tai-trong-he-thong-aws-ec2-worker-va-sqs" class="wp-block-heading">1. Mục tiêu của stress test chịu tải trong hệ thống (AWS EC2 Worker và SQS)</h3>



<figure class="wp-block-image size-large"><img fetchpriority="high" decoding="async" width="1024" height="576" src="https://blog.tomosia.com.vn/wp-content/uploads/2025/10/image-2-1024x576.png" alt="Kiến trúc AWS EC2 Worker SQS" class="wp-image-3458" srcset="https://blog.tomosia.com.vn/wp-content/uploads/2025/10/image-2-1024x576.png 1024w, https://blog.tomosia.com.vn/wp-content/uploads/2025/10/image-2-300x169.png 300w, https://blog.tomosia.com.vn/wp-content/uploads/2025/10/image-2-768x432.png 768w, https://blog.tomosia.com.vn/wp-content/uploads/2025/10/image-2-380x214.png 380w, https://blog.tomosia.com.vn/wp-content/uploads/2025/10/image-2-800x450.png 800w, https://blog.tomosia.com.vn/wp-content/uploads/2025/10/image-2-1160x653.png 1160w, https://blog.tomosia.com.vn/wp-content/uploads/2025/10/image-2.png 1344w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>



<p>Khi hệ thống xử lý theo mô hình bất đồng bộ (asynchronous) — trong đó API nhận dữ liệu, đẩy vào hàng đợi (queue), và worker chạy nền (trên EC2) xử lý dần — việc đánh giá khả năng chịu tải không chỉ là đo tốc độ phản hồi API mà là <strong>đánh giá toàn bộ chuỗi xử lý message</strong>.</p>



<p>Stress test giúp xác định hệ thống có thể hấp thụ và xử lý bao nhiêu message mỗi giây, khi worker EC2 thực thi song song trên nhiều thread. Đây là bài test quan trọng để tối ưu số lượng instance, cấu hình thread pool và giới hạn throughput của hàng đợi SQS.</p>



<ul class="wp-block-list">
<li>Đo thời gian trung bình để xử lý một lượng lớn message.</li>



<li>Xác định giới hạn throughput trước khi queue backlog.</li>



<li>Phát hiện điểm nghẽn (bottleneck) ở tầng API, SQS hoặc Worker.</li>



<li>Đánh giá mức ổn định và khả năng phục hồi khi tải giảm.</li>
</ul>



<h3 id="2-kien-truc-ha-tang-dung-de-stress-test" class="wp-block-heading">2. Kiến trúc hạ tầng dùng để stress test</h3>



<p>Dưới đây là kiến trúc tham chiếu của hệ thống AWS EC2 Worker &amp; SQS trong bài test:</p>



<figure class="wp-block-table is-style-stripes"><table class="has-fixed-layout"><thead><tr><th>Thành phần</th><th>Vai trò</th><th>Ghi chú khi test</th></tr></thead><tbody><tr><td><strong>API Gateway</strong></td><td>Nhận request từ JMeter và đẩy payload vào SQS.</td><td>Bật log để theo dõi tốc độ gửi và lỗi HTTP.</td></tr><tr><td><strong>Amazon SQS</strong></td><td>Hàng đợi lưu message cần xử lý.</td><td>Dùng <em>Standard Queue</em> để đạt throughput cao nhất.</td></tr><tr><td><strong>EC2 Worker (Java)</strong></td><td>Ứng dụng Java chạy trên EC2, đọc message từ SQS và xử lý nghiệp vụ.</td><td>Chạy nhiều thread song song; điều chỉnh thread pool để tối ưu hiệu năng.</td></tr><tr><td><strong>Amazon RDS</strong></td><td>Lưu kết quả xử lý hoặc log hệ thống.</td><td>Tối ưu connection pool (HikariCP hoặc datasource) để tránh quá tải.</td></tr><tr><td><strong>CloudWatch</strong></td><td>Thu thập metric từ SQS và EC2.</td><td>Theo dõi CPU, queue depth, backlog, throughput.</td></tr></tbody></table></figure>



<h3 id="3-chuan-bi-du-lieu-test" class="wp-block-heading">3. Chuẩn bị dữ liệu test</h3>



<p>Dữ liệu test cần mô phỏng hành vi thật của hệ thống, bao gồm payload gửi vào API và cấu hình tốc độ bắn tải. Thông thường, các test case được lưu trong file Excel — mỗi sheet là một loại test (load, spike, stability&#8230;).</p>



<figure class="wp-block-table is-style-stripes"><table class="has-fixed-layout"><thead><tr><th>Tên test</th><th>Số request</th><th>Ramp-up time (giây)</th><th>Tốc độ gửi (req/s)</th><th>Mục tiêu</th></tr></thead><tbody><tr><td><code>Load_500_60</code></td><td>500</td><td>60</td><td>~8</td><td>Đo năng lực xử lý trung bình</td></tr><tr><td><code>Spike_2000_60</code></td><td>2000</td><td>60</td><td>~33</td><td>Kiểm tra phản ứng khi tải tăng nhanh</td></tr><tr><td><code>Stable_10000_300</code></td><td>10000</td><td>300</td><td>~33</td><td>Đánh giá độ ổn định dài hạn</td></tr></tbody></table></figure>



<h4 id="vi-du-ket-qua-thuc-te-case-1-500-threads-60-giay" class="wp-block-heading">Ví dụ: Kết quả thực tế Case 1 (500 threads / 60 giây)</h4>



<p>Dưới đây là kết quả kiểm thử được ghi nhận (theo file Excel và log giám sát thực tế):</p>



<figure class="wp-block-image size-large"><img decoding="async" width="1024" height="152" src="https://blog.tomosia.com.vn/wp-content/uploads/2025/10/image-3-1024x152.png" alt="" class="wp-image-3459" srcset="https://blog.tomosia.com.vn/wp-content/uploads/2025/10/image-3-1024x152.png 1024w, https://blog.tomosia.com.vn/wp-content/uploads/2025/10/image-3-300x44.png 300w, https://blog.tomosia.com.vn/wp-content/uploads/2025/10/image-3-768x114.png 768w, https://blog.tomosia.com.vn/wp-content/uploads/2025/10/image-3-1536x227.png 1536w, https://blog.tomosia.com.vn/wp-content/uploads/2025/10/image-3-380x56.png 380w, https://blog.tomosia.com.vn/wp-content/uploads/2025/10/image-3-800x118.png 800w, https://blog.tomosia.com.vn/wp-content/uploads/2025/10/image-3-1160x172.png 1160w, https://blog.tomosia.com.vn/wp-content/uploads/2025/10/image-3.png 1729w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>



<p>Trong bài test này (Case 1), hệ thống được giả lập với <strong>500 người dùng đồng thời</strong> trong vòng <strong>60 giây</strong>. </p>



<p>Kết quả cho thấy throughput trung bình đạt khoảng <strong>8.3 requests/giây</strong> với <strong>100% thành công</strong>, thời gian phản hồi trung bình là <strong>227ms</strong> và cực đại là <strong>307ms</strong>.</p>



<p> Điều này cho thấy hệ thống có khả năng xử lý ổn định ở <strong>mức tải trung bình.</strong></p>



<p>Jmeter</p>



<figure class="wp-block-image size-large"><img decoding="async" width="1024" height="123" src="https://blog.tomosia.com.vn/wp-content/uploads/2025/10/image-4-1024x123.png" alt="" class="wp-image-3460" srcset="https://blog.tomosia.com.vn/wp-content/uploads/2025/10/image-4-1024x123.png 1024w, https://blog.tomosia.com.vn/wp-content/uploads/2025/10/image-4-300x36.png 300w, https://blog.tomosia.com.vn/wp-content/uploads/2025/10/image-4-768x92.png 768w, https://blog.tomosia.com.vn/wp-content/uploads/2025/10/image-4-380x46.png 380w, https://blog.tomosia.com.vn/wp-content/uploads/2025/10/image-4-800x96.png 800w, https://blog.tomosia.com.vn/wp-content/uploads/2025/10/image-4-1160x139.png 1160w, https://blog.tomosia.com.vn/wp-content/uploads/2025/10/image-4.png 1449w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>



<p>EC2</p>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="1022" height="364" src="https://blog.tomosia.com.vn/wp-content/uploads/2025/10/image-5.png" alt="" class="wp-image-3461" srcset="https://blog.tomosia.com.vn/wp-content/uploads/2025/10/image-5.png 1022w, https://blog.tomosia.com.vn/wp-content/uploads/2025/10/image-5-300x107.png 300w, https://blog.tomosia.com.vn/wp-content/uploads/2025/10/image-5-768x274.png 768w, https://blog.tomosia.com.vn/wp-content/uploads/2025/10/image-5-380x135.png 380w, https://blog.tomosia.com.vn/wp-content/uploads/2025/10/image-5-800x285.png 800w" sizes="auto, (max-width: 1022px) 100vw, 1022px" /></figure>



<p>Worker</p>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="1000" height="355" src="https://blog.tomosia.com.vn/wp-content/uploads/2025/10/image-6.png" alt="" class="wp-image-3462" srcset="https://blog.tomosia.com.vn/wp-content/uploads/2025/10/image-6.png 1000w, https://blog.tomosia.com.vn/wp-content/uploads/2025/10/image-6-300x107.png 300w, https://blog.tomosia.com.vn/wp-content/uploads/2025/10/image-6-768x273.png 768w, https://blog.tomosia.com.vn/wp-content/uploads/2025/10/image-6-380x135.png 380w, https://blog.tomosia.com.vn/wp-content/uploads/2025/10/image-6-800x284.png 800w" sizes="auto, (max-width: 1000px) 100vw, 1000px" /></figure>



<p>RDS</p>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="538" height="362" src="https://blog.tomosia.com.vn/wp-content/uploads/2025/10/image-7.png" alt="" class="wp-image-3463" srcset="https://blog.tomosia.com.vn/wp-content/uploads/2025/10/image-7.png 538w, https://blog.tomosia.com.vn/wp-content/uploads/2025/10/image-7-300x202.png 300w, https://blog.tomosia.com.vn/wp-content/uploads/2025/10/image-7-380x256.png 380w" sizes="auto, (max-width: 538px) 100vw, 538px" /></figure>



<p>SQS</p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="312" src="https://blog.tomosia.com.vn/wp-content/uploads/2025/10/image-8-1024x312.png" alt="" class="wp-image-3464" srcset="https://blog.tomosia.com.vn/wp-content/uploads/2025/10/image-8-1024x312.png 1024w, https://blog.tomosia.com.vn/wp-content/uploads/2025/10/image-8-300x91.png 300w, https://blog.tomosia.com.vn/wp-content/uploads/2025/10/image-8-768x234.png 768w, https://blog.tomosia.com.vn/wp-content/uploads/2025/10/image-8-380x116.png 380w, https://blog.tomosia.com.vn/wp-content/uploads/2025/10/image-8-800x244.png 800w, https://blog.tomosia.com.vn/wp-content/uploads/2025/10/image-8-1160x353.png 1160w, https://blog.tomosia.com.vn/wp-content/uploads/2025/10/image-8.png 1448w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>



<p>Mẫu Jmeter setting</p>



<pre class="wp-block-code"><code>CSV Data Set Config: Filename: data_test.csv 
Variable Names: message_id,payload 
Recycle on EOF: True 
HTTP Body: { 
  "messageId": "${message_id}",
  "payload": "${payload}",
  "timestamp": "${__time(yyyy-MM-dd'T'HH:mm:ss)}"
 }</code></pre>



<h3 id="4-cau-hinh-jmeter-de-gui-du-lieu-len-aws" class="wp-block-heading">4. Cấu hình JMeter để gửi dữ liệu lên AWS</h3>



<p>Công cụ được sử dụng là <strong>Apache JMeter</strong> — chuyên dùng để tạo tải HTTP và kiểm tra hiệu năng API. Mỗi request được gửi tới API Gateway, sau đó dữ liệu được đẩy vào hàng đợi SQS để worker EC2 xử lý.</p>



<pre class="wp-block-code"><code>Thread Group:
  Number of Threads (users): 500
  Ramp-up Period: 60
  Loop Count: 1

HTTP Request Sampler:
  Method: POST
  URL: https://{api-id}.execute-api.{region}.amazonaws.com/prod/push
  Body Data:
  {
    "messageId": "${__UUID()}",
    "payload": "${__RandomString(32,ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890)}",
    "timestamp": "${__time(yyyy-MM-dd'T'HH:mm:ss)}"
  }

HTTP Header Manager:
  Content-Type: application/json
  x-api-key: ${API_KEY}</code></pre>



<p>Chạy test bằng chế độ non-GUI để tiết kiệm tài nguyên:</p>



<pre class="wp-block-code"><code>jmeter -n -t HTTPRequest_500_60_001.jmx -l results.csv -JAPI_KEY=xxxx</code></pre>



<p>Nếu cần mô phỏng tăng tải dần, bạn có thể dùng plugin <strong>Stepping Thread Group</strong> để tăng số luồng từng giai đoạn, giúp kết quả thực tế hơn.</p>



<h3 id="5-giam-sat-ec2-worker-va-hang-doi-sqs" class="wp-block-heading">5. Giám sát EC2 Worker và hàng đợi SQS</h3>



<p>Trong quá trình test, CloudWatch là công cụ chính để giám sát hệ thống. Các metric cần chú ý:</p>



<figure class="wp-block-table is-style-stripes"><table class="has-fixed-layout"><thead><tr><th>Metric</th><th>Nguồn</th><th>Ý nghĩa</th></tr></thead><tbody><tr><td><code>ApproximateNumberOfMessagesVisible</code></td><td>SQS</td><td>Số message đang chờ xử lý. Nếu tăng liên tục → worker xử lý không kịp.</td></tr><tr><td><code>ApproximateAgeOfOldestMessage</code></td><td>SQS</td><td>Tuổi của message lâu nhất trong queue. Nếu tăng nhanh → có backlog.</td></tr><tr><td><code>CPUUtilization</code></td><td>EC2</td><td>Theo dõi mức sử dụng CPU của worker Java.</td></tr><tr><td><code>NetworkIn/Out</code></td><td>EC2</td><td>Lưu lượng xử lý qua API hoặc đọc/ghi dữ liệu.</td></tr><tr><td><code>DBConnections</code></td><td>RDS</td><td>Số kết nối tới cơ sở dữ liệu. Nếu tăng đột biến → nghẽn kết nối.</td></tr></tbody></table></figure>



<h3 id="6-phan-tich-ket-qua-va-danh-gia-he-thong" class="wp-block-heading">6. Phân tích kết quả và đánh giá hệ thống</h3>



<p>Sau khi test, cần đối chiếu kết quả từ JMeter (thời gian phản hồi, throughput) với metric từ CloudWatch (queue depth, CPU, backlog). Một hệ thống tốt là khi:</p>



<ul class="wp-block-list">
<li>Queue depth không tăng mãi, mà dao động quanh ngưỡng ổn định.</li>



<li>CPU trên EC2 được sử dụng hiệu quả (~60–80%), không nghẽn 100% liên tục.</li>



<li>Throughput duy trì ổn định trong suốt thời gian test.</li>



<li>Số message trong DLQ = 0 hoặc rất thấp.</li>
</ul>



<h3 id="7-ket-luan" class="wp-block-heading">7. Kết luận</h3>



<p>Stress test trên AWS EC2 Worker và SQS giúp bạn hiểu được giới hạn chịu tải của hệ thống cũng như khả năng tự phục hồi sau khi backlog.  
Khi theo dõi đúng metric và xác định rõ “ngưỡng nghẽn” (bottleneck), bạn có thể điều chỉnh thread pool, số lượng EC2 instance hoặc kích thước hàng đợi để đạt hiệu suất tối ưu.</p>



<h4 id="tai-lieu-tham-khao" class="wp-block-heading">Tài liệu tham khảo</h4>



<ul class="wp-block-list">
<li><a href="https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-monitoring.html" target="_blank">Amazon SQS Monitoring Guide</a></li>



<li><a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/monitoring-system-instance.html" target="_blank">Amazon EC2 Monitoring</a></li>



<li><a href="https://jmeter.apache.org/usermanual/" target="_blank">Apache JMeter User Manual</a></li>



<li><a href="https://aws.amazon.com/blogs/compute/" target="_blank">AWS Compute Blog</a></li>
</ul>
<p>The post <a href="https://blog.tomosia.com.vn/stress-test-with-aws-worker/">Stress Test with AWS Worker</a> appeared first on <a href="https://blog.tomosia.com.vn">Tomoshare</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://blog.tomosia.com.vn/stress-test-with-aws-worker/feed/</wfw:commentRss>
			<slash:comments>6</slash:comments>
		
		
			</item>
		<item>
		<title>ISTQB</title>
		<link>https://blog.tomosia.com.vn/istqb/</link>
		
		<dc:creator><![CDATA[Le My Le]]></dc:creator>
		<pubDate>Thu, 21 Dec 2023 08:49:44 +0000</pubDate>
				<category><![CDATA[Test]]></category>
		<guid isPermaLink="false">https://blog.tomosia.com.vn/?p=2760</guid>

					<description><![CDATA[<p>I. ISTQB là gì? ISTQB(International Software Testing Qualifications Board) là tổ chức quốc tế chuyên về chứng chỉ&#8230;</p>
<p>The post <a href="https://blog.tomosia.com.vn/istqb/">ISTQB</a> appeared first on <a href="https://blog.tomosia.com.vn">Tomoshare</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<h2 id="i-istqb-la-gi" class="wp-block-heading"><span data-token-index="0" class="notion-enable-hover" style="font-weight:600">I. ISTQB là gì?</span></h2>



<p>ISTQB(International Software Testing Qualifications Board) là tổ chức quốc tế chuyên về chứng chỉ và chất lượng kiểm thử phần mềm. Chứng chỉ của ISTQB được công nhận toàn cầu và cung cấp một chuẩn chung cho kiểm thử phần mềm.</p>



<p>Trang web của tổ chức này là&nbsp;<a href="http://www.istqb.org/">http://www.istqb.org/</a><br></p>



<h2 id="ii-chung-chi-istqb-gom-nhung-level-nao" class="wp-block-heading">II. Chứng chỉ ISTQB gồm những Level nào?</h2>



<h3 id="1-istqb-foundation-level-ctfl" class="wp-block-heading">1. ISTQB Foundation Level (CTFL):</h3>



<ul class="wp-block-list">
<li>Tập trung vào kiến thức về kiểm thử phần mềm, các nguyên lý và kỹ thuật.…</li>



<li>Là chứng chỉ bắt buộc phải vượt qua nếu muốn chinh phục các level cao hơn.</li>
</ul>



<h3 id="2-istqb-advanced-level-ctal" class="wp-block-heading">2. ISTQB Advanced Level (CTAL):</h3>



<ul class="wp-block-list">
<li>Bao gồm 3 modules: Test Manager, Test Analyst, và Technical Test Analyst.</li>



<li>Yêu cầu bắt buộc đã đạt được chứng chỉ Foundation Level.</li>
</ul>



<h3 id="3-istqb-expert-level-ctel" class="wp-block-heading">3. ISTQB Expert Level (CTEL):</h3>



<ul class="wp-block-list">
<li>Đây là cấp độ chứng chỉ cao cấp nhất của ISTQB.</li>



<li>Chia thành ba chuyên ngành: Improving the Testing Process, Test Management, and Test Automation Engineering.</li>



<li>Dành cho những chuyên gia có kinh nghiệm lâu dài và muốn phát triển sâu rộng kiến thức và kỹ năng trong lĩnh vực kiểm thử phần mềm.</li>
</ul>



<h2 id="iii-cac-kien-thuc-can-nam-khi-thi-chung-chi-istqb-foundation-level-ctfl" class="wp-block-heading">III. Các kiến thức cần nắm khi thi chứng chỉ ISTQB Foundation Level (CTFL)</h2>



<h3 id="1-cac-noi-dung-chinh" class="wp-block-heading">1. Các nội dung chính:</h3>


<div class="wp-block-image">
<figure class="aligncenter size-large"><img loading="lazy" decoding="async" width="1024" height="576" src="http://blog.tomosia.com.vn/wp-content/uploads/2023/12/istqb-foundation-2018-content-1-1024x576.gif" alt="" class="wp-image-2762" srcset="https://blog.tomosia.com.vn/wp-content/uploads/2023/12/istqb-foundation-2018-content-1-1024x576.gif 1024w, https://blog.tomosia.com.vn/wp-content/uploads/2023/12/istqb-foundation-2018-content-1-300x169.gif 300w, https://blog.tomosia.com.vn/wp-content/uploads/2023/12/istqb-foundation-2018-content-1-768x432.gif 768w, https://blog.tomosia.com.vn/wp-content/uploads/2023/12/istqb-foundation-2018-content-1-380x214.gif 380w, https://blog.tomosia.com.vn/wp-content/uploads/2023/12/istqb-foundation-2018-content-1-800x450.gif 800w, https://blog.tomosia.com.vn/wp-content/uploads/2023/12/istqb-foundation-2018-content-1-1160x653.gif 1160w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>
</div>


<h3 id="2-cau-truc-de-thi" class="wp-block-heading">2. Cấu trúc đề thi:</h3>



<p><strong>Foundation Level examination</strong></p>



<ul class="wp-block-list">
<li>40 multiple choice questions</li>



<li>A scoring of 1 point for each correct answer, each question can be 1 to 2 correct answers</li>



<li>A pass mark of 65% (26 or more points)</li>



<li>A duration of 60 minutes(+25% Non-Native Language)<br></li>
</ul>


<div class="wp-block-image">
<figure class="aligncenter size-full"><img loading="lazy" decoding="async" width="384" height="201" src="http://blog.tomosia.com.vn/wp-content/uploads/2023/12/Screen-Shot-2023-12-19-at-10.05.14-PM.png" alt="" class="wp-image-2764" srcset="https://blog.tomosia.com.vn/wp-content/uploads/2023/12/Screen-Shot-2023-12-19-at-10.05.14-PM.png 384w, https://blog.tomosia.com.vn/wp-content/uploads/2023/12/Screen-Shot-2023-12-19-at-10.05.14-PM-300x157.png 300w, https://blog.tomosia.com.vn/wp-content/uploads/2023/12/Screen-Shot-2023-12-19-at-10.05.14-PM-380x199.png 380w" sizes="auto, (max-width: 384px) 100vw, 384px" /></figure>
</div>


<ul class="wp-block-list">
<li>K1: Remember</li>



<li>K2: Understand</li>



<li>K3: Apply/Analyze</li>
</ul>



<figure class="wp-block-table">
    <table style="width: 100%; border: 1px solid black; border-collapse: collapse;">
        <tbody>
            <tr>
                <th style="border: 1px solid black; border-collapse: collapse; padding: 10px; width: 80px;">Chapter</th>
                <th style="border: 1px solid black; border-collapse: collapse; padding: 10px;">#Questions</th>
                <th style="border: 1px solid black; border-collapse: collapse; padding: 10px;">Focus</th>
                <th style="border: 1px solid black; border-collapse: collapse; padding: 10px;">Level</th>
            </tr>
            <tr>
                <td style="border: 1px solid black; border-collapse: collapse; padding-left: 10px; padding-right: 10px; width: 80px;">Chapter 1</td>
                <td style="border: 1px solid black; border-collapse: collapse; padding-left: 10px; padding-right: 10px;">1</td>
                <td style="border: 1px solid black; border-collapse: collapse; padding-left: 10px; padding-right: 10px;">1.1.1 Typical Objectives of Testing</td>
                <td style="border: 1px solid black; border-collapse: collapse; padding-left: 10px; padding-right: 10px;">K1</td>
            </tr>
            <tr>
                <td style="border: 1px solid black; border-collapse: collapse; padding-left: 10px; padding-right: 10px; width: 80px;"></td>
                <td style="border: 1px solid black; border-collapse: collapse; padding-left: 10px; padding-right: 10px;">6</td>
                <td style="border: 1px solid black; border-collapse: collapse; padding-left: 10px; padding-right: 10px;">1.1.2 Testing and Debugging <br />
                    1.2. Why is test? <br />
                    1.2.2 Quality Assurance and Testing <br />
                    1.2.3 Errors, Defects, and Failures <br />
                    1.2.4 Defects, Root Causes and Effects <br />
                    1.3 Seven Principles of Testing <br />
                    1.4.2 Test Activities and Tasks <br />
                    1.4.4 Traceability between the Test Basis and Test Work Products</td>
                <td style="border: 1px solid black; border-collapse: collapse; padding-left: 10px; padding-right: 10px;">K2</td>
            </tr>
            <tr>
                <td style="border: 1px solid black; border-collapse: collapse; padding-left: 10px; padding-right: 10px; width: 80px;"></td>
                <td style="border: 1px solid black; border-collapse: collapse; padding-left: 10px; padding-right: 10px;">1</td>
                <td style="border: 1px solid black; border-collapse: collapse; padding-left: 10px; padding-right: 10px;">1.5.1 Human Psychology and Testing</td>
                <td style="border: 1px solid black; border-collapse: collapse; padding-left: 10px; padding-right: 10px;">K1</td>
            </tr>
            <tr>
                <td style="border: 1px solid black; border-collapse: collapse; padding-left: 10px; padding-right: 10px; width: 80px;">Chapter 2</td>
                <td style="border: 1px solid black; border-collapse: collapse; padding-left: 10px; padding-right: 10px;">1</td>
                <td style="border: 1px solid black; border-collapse: collapse; padding-left: 10px; padding-right: 10px;">2.1.2 Software Development Lifecycle
                    Models in Context <br />
                    2.3.2 Non-functional Testing</td>
                <td style="border: 1px solid black; border-collapse: collapse; padding-left: 10px; padding-right: 10px;">K1</td>
            </tr>
            <tr>
                <td style="border: 1px solid black; border-collapse: collapse; padding-left: 10px; padding-right: 10px; width: 80px;"></td>
                <td style="border: 1px solid black; border-collapse: collapse; padding-left: 10px; padding-right: 10px;">4</td>
                <td style="border: 1px solid black; border-collapse: collapse; padding-left: 10px; padding-right: 10px;">2.1 Software Development Lifecycle
                    Models &#8211; good testing characteristics <br />
                    2.2 Test Levels <br />
                    2.3.1 Functional Testing <br />
                    2.3.4 Change-related Testing: re-test and regression test <br />
                    2.4 Maintenance Testing: Trigger for maintenance and Impact analysis</td>
                <td style="border: 1px solid black; border-collapse: collapse; padding-left: 10px; padding-right: 10px;">K2</td>
            </tr>
            <tr>
                <td style="border: 1px solid black; border-collapse: collapse; padding-left: 10px; padding-right: 10px; width: 80px;">Chapter 3</td>
                <td style="border: 1px solid black; border-collapse: collapse; padding-left: 10px; padding-right: 10px;">1</td>
                <td style="border: 1px solid black; border-collapse: collapse; padding-left: 10px; padding-right: 10px;">3.1.1 Work Products that Can Be Examined
                    by Static Testing <br />
                    3.2.2 Roles and responsibilities in a formal review</td>
                <td style="border: 1px solid black; border-collapse: collapse; padding-left: 10px; padding-right: 10px;">K1</td>
            </tr>
            <tr>
                <td style="border: 1px solid black; border-collapse: collapse; padding-left: 10px; padding-right: 10px; width: 80px;"></td>
                <td style="border: 1px solid black; border-collapse: collapse; padding-left: 10px; padding-right: 10px;">3</td>
                <td style="border: 1px solid black; border-collapse: collapse; padding-left: 10px; padding-right: 10px;">3.1.2 Benefits of Static Testing <br />
                    3.1.3 Differences between Static and Dynamic Testing <br />
                    3.2.1 Work Product Review Process <br />
                    3.2.3 Review Types <br />
                    3.2.5 Success Factors for Reviews</td>
                <td style="border: 1px solid black; border-collapse: collapse; padding-left: 10px; padding-right: 10px;">K2</td>
            </tr>
            <tr>
                <td style="border: 1px solid black; border-collapse: collapse; padding-left: 10px; padding-right: 10px; width: 80px;"></td>
                <td style="border: 1px solid black; border-collapse: collapse; padding-left: 10px; padding-right: 10px;">1</td>
                <td style="border: 1px solid black; border-collapse: collapse; padding-left: 10px; padding-right: 10px;">3.2.4 Applying Review Techniques</td>
                <td style="border: 1px solid black; border-collapse: collapse; padding-left: 10px; padding-right: 10px;">K3</td>
            </tr>
            <tr>
                <td style="border: 1px solid black; border-collapse: collapse; padding-left: 10px; padding-right: 10px; width: 80px;">Chapter 4</td>
                <td style="border: 1px solid black; border-collapse: collapse; padding-left: 10px; padding-right: 10px;">6</td>
                <td style="border: 1px solid black; border-collapse: collapse; padding-left: 10px; padding-right: 10px;">4.1.1 Choosing Test Techniques <br />
                    4.1.2 Categories of Test Techniques and Their Characteristics <br />
                    4.2 Black-box Test Techniques <br />
                    4.3 White-box Test Techniques <br />
                    4.4 Experience_base techniques</td>
                <td style="border: 1px solid black; border-collapse: collapse; padding-left: 10px; padding-right: 10px;">K2</td>
            </tr>
            <tr>
                <td style="border: 1px solid black; border-collapse: collapse; padding-left: 10px; padding-right: 10px; width: 80px;"></td>
                <td style="border: 1px solid black; border-collapse: collapse; padding-left: 10px; padding-right: 10px;">5</td>
                <td style="border: 1px solid black; border-collapse: collapse; padding-left: 10px; padding-right: 10px;">4.2.1 Equivalence partitioning (EP)
                    <br />
                    4.2.2 Boundary value analysis (BVA) <br />
                    4.2.3 Decision tables <br />
                    4.2.4 State transition testing</td>
                <td style="border: 1px solid black; border-collapse: collapse; padding-left: 10px; padding-right: 10px;">K3</td>
            </tr>
            <tr>
                <td style="border: 1px solid black; border-collapse: collapse; padding-left: 10px; padding-right: 10px; width: 80px;">Chapter 5</td>
                <td style="border: 1px solid black; border-collapse: collapse; padding-left: 10px; padding-right: 10px;">2</td>
                <td style="border: 1px solid black; border-collapse: collapse; padding-left: 10px; padding-right: 10px;">5.1.2 Tasks of a Test Manager and Tester
                    <br />
                    5.2.5 Factors Influencing the Test Effort <br />
                    5.3.1 Metrics Used in Testing<br />
                    5.5.1 Definition of Risk</td>
                <td style="border: 1px solid black; border-collapse: collapse; padding-left: 10px; padding-right: 10px;">K1</td>
            </tr>
            <tr>
                <td style="border: 1px solid black; border-collapse: collapse; padding-left: 10px; padding-right: 10px; width: 80px;"></td>
                <td style="border: 1px solid black; border-collapse: collapse; padding-left: 10px; padding-right: 10px;">5</td>
                <td style="border: 1px solid black; border-collapse: collapse; padding-left: 10px; padding-right: 10px;">5.1.1 Test Organization <br />
                    5.2.1 Purpose and Content of a Test Plan <br />
                    5.2.2 Test Strategy and Test Approach <br />
                    5.2.3 Entry Criteria and Exit Criteria <br />
                    5.2.6 Test Estimation Techniques <br />
                    5.4 Configuration Management <br />
                    5.5.2 Product and Project Risks <br />
                    5.5.3 Risk-based Testing and Product Quality</td>
                <td style="border: 1px solid black; border-collapse: collapse; padding-left: 10px; padding-right: 10px;">K2</td>
            </tr>
            <tr>
                <td style="border: 1px solid black; border-collapse: collapse; padding-left: 10px; padding-right: 10px; width: 80px;"></td>
                <td style="border: 1px solid black; border-collapse: collapse; padding-left: 10px; padding-right: 10px;">2</td>
                <td style="border: 1px solid black; border-collapse: collapse; padding-left: 10px; padding-right: 10px;">5.2.4 Test Execution Schedule <br />
                    5.6 Defect Management</td>
                <td style="border: 1px solid black; border-collapse: collapse; padding-left: 10px; padding-right: 10px;">K3</td>
            </tr>
            <tr>
                <td style="border: 1px solid black; border-collapse: collapse; padding-left: 10px; padding-right: 10px; width: 80px;">Chapter 6</td>
                <td style="border: 1px solid black; border-collapse: collapse; padding-left: 10px; padding-right: 10px;">2</td>
                <td style="border: 1px solid black; border-collapse: collapse; padding-left: 10px; padding-right: 10px;">6.1.1 Test Tool Classification <br />
                    6.1.2 Benefits and Risks of Test Automation <br />
                    6.2 Effective Use of Tools: Tool Selection, Pilot Projects, Success Factors</td>
                <td style="border: 1px solid black; border-collapse: collapse; padding-left: 10px; padding-right: 10px;">K1</td>
            </tr>
        </tbody>
    </table>
</figure>



<h3 id="3-tai-lieu" class="wp-block-heading">3. Tài liệu:</h3>



<ul class="wp-block-list">
<li>Giáo trình tham khảo tại đây: <a href="https://istqb-main-web-prod.s3.amazonaws.com/media/documents/ISTQB_CTFL_Syllabus-v4.0.pdf">ISTQB_CTFL_Syllabus-v4.0</a> (Đây là bản đã rút gọn, nếu muốn hiểu rộng hơn có thể đọc <a href="https://www.utcluj.ro/media/page_document/78/Foundations%20of%20software%20testing%20-%20ISTQB%20Certification.pdf">bản full</a>)</li>



<li>Trong quá trình học sẽ có rất nhiều khái niệm, thuật ngữ lạ, khó hiểu. Có thể tra cứu tại: <a href="https://glossary.istqb.org">https://glossary.istqb.org</a></li>



<li>Một vài sample exams có thể download tại đây: <a href="https://www.istqb.org/certifications/certified-tester-foundation-level">https://www.istqb.org/certifications/certified-tester-foundation-level</a></li>



<li>Một exam có đáp án: <a href="https://docs.google.com/document/d/1LyvR9RkZZ2m_ZKN6_97t87FI3-mNHLRbCCFeZLuXtN8/edit?usp=sharing">tham khảo</a><br></li>
</ul>



<h3 id="4-mot-it-kinh-nghiem-hoc-istqb" class="wp-block-heading">4. Một ít kinh nghiệm học ISTQB:</h3>



<p>&#8211; Nội dung đều nằm trong sách <a href="https://istqb-main-web-prod.s3.amazonaws.com/media/documents/ISTQB_CTFL_Syllabus-v4.0.pdf">ISTQB_CTFL_Syllabus-v4.0</a> . Đòi hỏi học hết các nội dung vì các câu hỏi đều trải dài các chương.</p>



<p>&#8211; Cách học ISTQB của mình:</p>



<ul class="wp-block-list">
<li>Đọc kĩ từng câu, hiểu ý nghĩa của câu đó và <strong>Highlight</strong> những đoạn, những ý quan trọng.</li>



<li>Lập bản tóm tắt hoặc sơ đồ ghi nhớ để tổng hợp kiến thức ngắn gọn. (Xem lại hằng ngày để ghi nhớ)</li>



<li>Học từng chương, hiểu rõ từng chương. Xong chương nào làm bài tập/câu hỏi chương đó. Sau đó mới chuyển sang học kiến thức chương tiếp theo.</li>



<li>Sau khi học và hiểu 6 chương: chuyển qua làm đề tổng hợp.</li>



<li>Khi làm bài tập có thể kết hợp tra cứu <a href="https://glossary.istqb.org">glossary</a> nếu không hiểu các thuật ngữ.</li>



<li>Có 24 câu hỏi loại K2(Understand) cần đọc lại nội dung trong sách và phân tích.</li>



<li>Đặc biệt chương 4 các kiến thức test đều nằm ở đây. Các câu hỏi là dạng bài tập áp dụng (K3: Apply) nên cần nắm vững các kỹ thuật test để áp dụng ra kết quả đúng nhé.</li>
</ul>



<p></p>



<p>&#8211; Chú ý khi đọc đề thi:</p>



<ul class="wp-block-list">
<li>Các câu hỏi trong chứng nhận ISTQB được trình bày theo cách mà tất cả các tùy chọn trông gần giống nhau. Do đó, rất quan trọng để đọc câu hỏi và các tùy chọn cẩn thận.</li>



<li>Nếu bạn tìm thấy nhiều hơn một câu trả lời đúng thì&nbsp;hãy bắt đầu bằng việc gạch bỏ những&nbsp;câu trả lời&nbsp;sai rõ ràng.&nbsp;Sau đó, với những câu trả lời còn lại đang phân vân, hãy tập trung gạch chân và đọc kỹ thuật ngữ/ định nghĩa trong đó, điều khác biệt sẽ nằm ở đây đấy.</li>



<li>Đừng đọc lướt câu hỏi mà nên đọc hai, ba lần, cố gắng hiểu kỹ nó (Không ngồi dịch tất cả sang tiếng việt. Hãy cố gắng đọc tiếng anh và cố gắng hiểu nhanh nó để tiết kiệm thời gian)&nbsp; Có một vài&nbsp;từ trong câu hỏi cần bạn chú ý nhiều hơn như&nbsp;KHÔNG, KHÔNG BAO GIỜ, TẤT CẢ.</li>



<li>Đừng cố dành nhiều thời gian vào một câu bài tập. Tất cả câu hỏi đều có 1 điểm như nhau nên cố gắng phân bổ thời gian hợp lý nhé.</li>
</ul>



<h3 id="5-nhung-dieu-can-luu-y-truoc-va-trong-khi-thi" class="wp-block-heading">5. Những điều cần lưu ý trước và trong khi thi:</h3>



<ul class="wp-block-list">
<li>Đến trước giờ thi 15 phút để làm thủ tục, Mang theo CMND hoặc bằng lái xe và bút bi làm bài, giấy nháp đã có trong đề thi.</li>



<li>Sau khi thi xong thì khoảng 4-6 tuần sẽ có kết quả thi và sau 2 tháng có chứng chỉ giấy&nbsp;gửi&nbsp;về Việt Nam. Link check kết quả online:&nbsp;<a href="http://www.scr.istqb.org/">http://www.scr.istqb.org/</a></li>



<li>Lưu ý tắt chuông điện thoại(không rung, không chuông, không báo thức) khi vào phòng thi.</li>



<li>Nhớ điền&nbsp;mã&nbsp;đề thi trong Answer sheet.</li>



<li>Và cuối cùng: Chúc các bạn ôn tập hiệu quả và đạt chứng chỉ ITSQB trong thời gian tới nhé!</li>
</ul>
<p>The post <a href="https://blog.tomosia.com.vn/istqb/">ISTQB</a> appeared first on <a href="https://blog.tomosia.com.vn">Tomoshare</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Automation test scripts in Postman</title>
		<link>https://blog.tomosia.com.vn/automation-test-scripts-in-postman/</link>
					<comments>https://blog.tomosia.com.vn/automation-test-scripts-in-postman/#comments</comments>
		
		<dc:creator><![CDATA[Phu Tran]]></dc:creator>
		<pubDate>Mon, 30 Oct 2023 14:56:37 +0000</pubDate>
				<category><![CDATA[Test]]></category>
		<category><![CDATA[Automation Test]]></category>
		<category><![CDATA[testing]]></category>
		<category><![CDATA[postman]]></category>
		<guid isPermaLink="false">https://blog.tomosia.com.vn/?p=1571</guid>

					<description><![CDATA[<p>Why automate your API tests? Efficiency: Automated tests can be run quickly and repeatedly, saving time compared to&#8230;</p>
<p>The post <a href="https://blog.tomosia.com.vn/automation-test-scripts-in-postman/">Automation test scripts in Postman</a> appeared first on <a href="https://blog.tomosia.com.vn">Tomoshare</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<h4 id="why-automate-your-api-tests" class="wp-block-heading">Why automate your API tests?</h4>



<p><strong>Efficiency</strong>: Automated tests can be run quickly and repeatedly, saving time compared to manual testing. This is especially important in the fast-paced world of software development.<br><br><strong>Consistency</strong>: Automated tests execute the same test cases in the same way every time, reducing the risk of human error and ensuring consistent testing.<br><br><strong>Reusability</strong>: Once you&#8217;ve created automated test scripts, you can reuse them for different versions of your software, ensuring that functionality doesn&#8217;t break when making updates or changes.</p>



<h4 id="adding-tests" class="wp-block-heading">Adding tests</h4>



<p>To add test a request , open the request and end enter code in the tests tab. Tests will execute after the request runs . The output is in the response&#8217;s test results tab</p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="562" src="http://blog.tomosia.com.vn/wp-content/uploads/2023/10/Screen-Shot-2023-10-25-at-20.57.22-1024x562.png" alt="" class="wp-image-1574" srcset="https://blog.tomosia.com.vn/wp-content/uploads/2023/10/Screen-Shot-2023-10-25-at-20.57.22-1024x562.png 1024w, https://blog.tomosia.com.vn/wp-content/uploads/2023/10/Screen-Shot-2023-10-25-at-20.57.22-300x165.png 300w, https://blog.tomosia.com.vn/wp-content/uploads/2023/10/Screen-Shot-2023-10-25-at-20.57.22-768x422.png 768w, https://blog.tomosia.com.vn/wp-content/uploads/2023/10/Screen-Shot-2023-10-25-at-20.57.22-1536x844.png 1536w, https://blog.tomosia.com.vn/wp-content/uploads/2023/10/Screen-Shot-2023-10-25-at-20.57.22-2048x1125.png 2048w, https://blog.tomosia.com.vn/wp-content/uploads/2023/10/Screen-Shot-2023-10-25-at-20.57.22-380x209.png 380w, https://blog.tomosia.com.vn/wp-content/uploads/2023/10/Screen-Shot-2023-10-25-at-20.57.22-800x439.png 800w, https://blog.tomosia.com.vn/wp-content/uploads/2023/10/Screen-Shot-2023-10-25-at-20.57.22-1160x637.png 1160w, https://blog.tomosia.com.vn/wp-content/uploads/2023/10/Screen-Shot-2023-10-25-at-20.57.22.png 2880w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>



<p>See how to work with the Postman basic test syntax to test a single HTTP API request a sample collection template . To try out this template select&nbsp;<a href="https://www.postman.com/templates/e9a37a28-055b-49cd-8c7e-97494a21eb54/API-testing-basics">API testing basics</a>.</p>



<h4 id="testing-collections-and-folders" class="wp-block-heading">Testing collections and folders</h4>



<p>When you run a collections the collections runner display the test results , including the response time in milliseconds add details about whether a specific request in the collection passed or failed is test<br></p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="938" src="http://blog.tomosia.com.vn/wp-content/uploads/2023/10/Screen-Shot-2023-10-25-at-20.43.01-1-1024x938.png" alt="" class="wp-image-1575" srcset="https://blog.tomosia.com.vn/wp-content/uploads/2023/10/Screen-Shot-2023-10-25-at-20.43.01-1-1024x938.png 1024w, https://blog.tomosia.com.vn/wp-content/uploads/2023/10/Screen-Shot-2023-10-25-at-20.43.01-1-300x275.png 300w, https://blog.tomosia.com.vn/wp-content/uploads/2023/10/Screen-Shot-2023-10-25-at-20.43.01-1-768x704.png 768w, https://blog.tomosia.com.vn/wp-content/uploads/2023/10/Screen-Shot-2023-10-25-at-20.43.01-1-380x348.png 380w, https://blog.tomosia.com.vn/wp-content/uploads/2023/10/Screen-Shot-2023-10-25-at-20.43.01-1-800x733.png 800w, https://blog.tomosia.com.vn/wp-content/uploads/2023/10/Screen-Shot-2023-10-25-at-20.43.01-1-1160x1063.png 1160w, https://blog.tomosia.com.vn/wp-content/uploads/2023/10/Screen-Shot-2023-10-25-at-20.43.01-1.png 1434w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="696" src="http://blog.tomosia.com.vn/wp-content/uploads/2023/10/Screen-Shot-2023-10-25-at-21.18.24-1024x696.png" alt="" class="wp-image-1576" srcset="https://blog.tomosia.com.vn/wp-content/uploads/2023/10/Screen-Shot-2023-10-25-at-21.18.24-1024x696.png 1024w, https://blog.tomosia.com.vn/wp-content/uploads/2023/10/Screen-Shot-2023-10-25-at-21.18.24-300x204.png 300w, https://blog.tomosia.com.vn/wp-content/uploads/2023/10/Screen-Shot-2023-10-25-at-21.18.24-768x522.png 768w, https://blog.tomosia.com.vn/wp-content/uploads/2023/10/Screen-Shot-2023-10-25-at-21.18.24-1536x1043.png 1536w, https://blog.tomosia.com.vn/wp-content/uploads/2023/10/Screen-Shot-2023-10-25-at-21.18.24-2048x1391.png 2048w, https://blog.tomosia.com.vn/wp-content/uploads/2023/10/Screen-Shot-2023-10-25-at-21.18.24-380x258.png 380w, https://blog.tomosia.com.vn/wp-content/uploads/2023/10/Screen-Shot-2023-10-25-at-21.18.24-800x543.png 800w, https://blog.tomosia.com.vn/wp-content/uploads/2023/10/Screen-Shot-2023-10-25-at-21.18.24-1160x788.png 1160w, https://blog.tomosia.com.vn/wp-content/uploads/2023/10/Screen-Shot-2023-10-25-at-21.18.24.png 2120w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>



<h4 id="using-postbot-ai-to-write-tests" class="wp-block-heading">Using Postbot <strong><code>AI</code></strong> to write tests</h4>



<ul class="wp-block-list">
<li><strong>To write a test with Postbot, do the following:</strong>
<ul class="wp-block-list">
<li>Send your request so it has a response.</li>



<li>Select the&nbsp;<strong>Tests</strong>&nbsp;tab.</li>



<li>In the&nbsp;<strong>Script with Postbot</strong>&nbsp;section next to your test, select the Postbot icon&nbsp;<img decoding="async" src="https://assets.postman.com/postman-docs/v10/icon-postbot-v10-16.jpg#icon" alt="Postbot icon" width="18">&nbsp;.</li>



<li>Enter your query as a simple text sentence, or select one of the suggested queries to tell Postbot what you need.</li>
</ul>
</li>
</ul>



<div class="wp-block-group"><div class="wp-block-group__inner-container is-layout-constrained wp-block-group-is-layout-constrained">
<figure class="wp-block-image size-full is-resized"><img loading="lazy" decoding="async" width="396" height="334" src="http://blog.tomosia.com.vn/wp-content/uploads/2023/10/postbot-add-test-v10-16.gif" alt="" class="wp-image-1579" style="aspect-ratio:1.18562874251497;width:679px;height:auto"/></figure>
</div></div>



<p><br></p>



<h4 id="summary-nexts-step" class="wp-block-heading">Summary &amp; Nexts step </h4>



<p>After writing tests in Postman, you could write more complex tests and use them with other Postman utilities. Let go.</p>



<p>Nexts step run your tests and validations on CI/CD using Postman CLI configuration</p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="875" src="http://blog.tomosia.com.vn/wp-content/uploads/2023/10/Screen-Shot-2023-10-25-at-21.40.07-1024x875.png" alt="" class="wp-image-1582" srcset="https://blog.tomosia.com.vn/wp-content/uploads/2023/10/Screen-Shot-2023-10-25-at-21.40.07-1024x875.png 1024w, https://blog.tomosia.com.vn/wp-content/uploads/2023/10/Screen-Shot-2023-10-25-at-21.40.07-300x256.png 300w, https://blog.tomosia.com.vn/wp-content/uploads/2023/10/Screen-Shot-2023-10-25-at-21.40.07-768x656.png 768w, https://blog.tomosia.com.vn/wp-content/uploads/2023/10/Screen-Shot-2023-10-25-at-21.40.07-1536x1313.png 1536w, https://blog.tomosia.com.vn/wp-content/uploads/2023/10/Screen-Shot-2023-10-25-at-21.40.07-380x325.png 380w, https://blog.tomosia.com.vn/wp-content/uploads/2023/10/Screen-Shot-2023-10-25-at-21.40.07-800x684.png 800w, https://blog.tomosia.com.vn/wp-content/uploads/2023/10/Screen-Shot-2023-10-25-at-21.40.07-1160x991.png 1160w, https://blog.tomosia.com.vn/wp-content/uploads/2023/10/Screen-Shot-2023-10-25-at-21.40.07.png 1554w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>
<p>The post <a href="https://blog.tomosia.com.vn/automation-test-scripts-in-postman/">Automation test scripts in Postman</a> appeared first on <a href="https://blog.tomosia.com.vn">Tomoshare</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://blog.tomosia.com.vn/automation-test-scripts-in-postman/feed/</wfw:commentRss>
			<slash:comments>1413</slash:comments>
		
		
		
		<series:name><![CDATA[Test Automation]]></series:name>
	</item>
		<item>
		<title>Phân biệt priority và severity trong testing</title>
		<link>https://blog.tomosia.com.vn/phan-biet-priority-va-severity-trong-testing/</link>
					<comments>https://blog.tomosia.com.vn/phan-biet-priority-va-severity-trong-testing/#comments</comments>
		
		<dc:creator><![CDATA[Nguyen Thi Thu]]></dc:creator>
		<pubDate>Mon, 23 Oct 2023 08:45:26 +0000</pubDate>
				<category><![CDATA[Test]]></category>
		<guid isPermaLink="false">https://blog.tomosia.com.vn/?p=1122</guid>

					<description><![CDATA[<p>1. Priority và Severity là gì? 2. Phân loại 3. Sự khác nhau giữa Priotity và Severity Priority&#8230;</p>
<p>The post <a href="https://blog.tomosia.com.vn/phan-biet-priority-va-severity-trong-testing/">Phân biệt priority và severity trong testing</a> appeared first on <a href="https://blog.tomosia.com.vn">Tomoshare</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p></p>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="523" height="368" src="http://blog.tomosia.com.vn/wp-content/uploads/2023/10/MicrosoftTeams-image-1.png" alt="" class="wp-image-1123" srcset="https://blog.tomosia.com.vn/wp-content/uploads/2023/10/MicrosoftTeams-image-1.png 523w, https://blog.tomosia.com.vn/wp-content/uploads/2023/10/MicrosoftTeams-image-1-300x211.png 300w, https://blog.tomosia.com.vn/wp-content/uploads/2023/10/MicrosoftTeams-image-1-200x140.png 200w, https://blog.tomosia.com.vn/wp-content/uploads/2023/10/MicrosoftTeams-image-1-380x267.png 380w" sizes="auto, (max-width: 523px) 100vw, 523px" /></figure>



<h3 id="1-priority-va-severity-la-gi" class="wp-block-heading">1. Priority và Severity là gì?</h3>



<ul class="wp-block-list">
<li>Priority là thứ tự cần xử lý defect. Priority càng cao nghĩa là defect càng cần được giải quyết sớm thông thường, những defect ảnh hưởng đến hoạt động của cả hệ thống sẽ được ưu tiên cao hơn những defect của các chức năng nhỏ.</li>



<li>Severity là mức độ ảnh hưởng của defect với sự phát triển hoặc hoạt động của ứng dụng đang test. Mức độ ảnh hưởng tới các function càng cao thì severity càng cao. Tester/QA thường là người xác định severity.</li>
</ul>



<h3 id="2-phan-loai" class="wp-block-heading">2. Phân loại</h3>



<ul class="wp-block-list">
<li><strong>Phân loại Priority:</strong>
<ul class="wp-block-list">
<li>High: Lỗi phải được khắc phục càng sớm càng tốt vì nó ảnh hưởng nghiêm trọng đến hệ thống và không thể sử dụng cho đến khi fix xong.</li>



<li>Medium: Lỗi cần được giải quyết, có thể đợi cho đến khi phiên bản mới được tạo</li>



<li>Low: Lỗi có thể gây khó chịu nhưng việc sửa chữa có thể được thực hiện sau khi lỗi nghiêm trọng hơn đã được khắc phục.</li>
</ul>
</li>



<li><strong>Phân loại Severity:</strong>








<ul class="wp-block-list">
<li>Critical: Lỗi kiến cho phần mềm ngừng hoạt động, không còn phần nào có thể chạy được.</li>



<li>Major: Đây là một lỗi rất nghiêm trọng và làm sập hệ thống, tuy nhiên 1 số phần khác vẫn có thể hoạt động.</li>
</ul>



<ul class="wp-block-list">
<li>Medium: Lỗi gây ra 1 số hành vi ngoài mong đợi nhưng hệ thống vẫn hoạt động.</li>



<li>Low: Lỗi nhỏ, không gây ảnh hưởng đến bất kỳ chức năng nào của hệ thống.</li>
</ul>
</li>
</ul>



<h3 id="3-su-khac-nhau-giua-priotity-va-severity" class="wp-block-heading">3. Sự khác nhau giữa Priotity và Severity</h3>



<div class="wp-block-columns is-layout-flex wp-container-core-columns-is-layout-9d6595d7 wp-block-columns-is-layout-flex">
<div class="wp-block-column is-vertically-aligned-center is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:100%">
<div class="wp-block-group"><div class="wp-block-group__inner-container is-layout-constrained wp-block-group-is-layout-constrained">
<div class="wp-block-columns is-layout-flex wp-container-core-columns-is-layout-9d6595d7 wp-block-columns-is-layout-flex">
<div class="wp-block-column is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:100%">
<figure class="wp-block-table"><table><tbody><tr><td><strong>Priority</strong><br></td><td><strong>Severity</strong><br></td></tr><tr><td>Xác định thứ tự ưu tiên để giải quyết lỗi </td><td>Xác định mức độ nghiêm trọng của lỗi với hoạt động của phần mềm </td></tr><tr><td>Liên quan đến schedule của dự án </td><td>Liên quan đến chức năng hoặc tiêu chuẩn </td></tr><tr><td>Mức độ ưu tiên cho biết thời gian sửa lỗi </td><td>Mức độ nghiêm trọng cho biết mức độ nghiêm trọng của lỗi về chức năng của sản phẩm </td></tr><tr><td>Độ ưu tiên được quyết định với sự tham vấn của PM và client</td><td>QA quyết định mức độ nghiêm trọng của bug <br></td></tr><tr><td>Độ ưu tiên được xác định bởi nghiệp vụ </td><td>Mức độ nghiêm trọng được xác định bởi chức năng </td></tr><tr><td>Có thể thay đổi thứ tự ưu tiên dự trên tình hình, kế hoạch dự án.</td><td>ít có khả năng thay đổi </td></tr><tr><td>Trong quá trình UAT, lỗi được fix dựa vào độ ưu tiên.</td><td> Trong quá trình system test, lỗi được fix dựa trên mức độ nghiêm trọng, sau đó đến mức độ ưu tiên </td></tr></tbody></table></figure>
</div>
</div>
</div></div>
</div>
</div>



<p>Ví dụ về độ nghiêm trọng và độ ưu tiên của lỗi:</p>



<ul class="wp-block-list">
<li>Mức độ nghiêm trọng thấp, mức độ ưu tiên cao: Logo của 1 website bị sai, có thể độ nghiêm trọng thấp vì nó không ảnh hưởng đến các chức năng khác nhưng có thể có độ ưu tiên cao vì logo sai ảnh hưởng đến uy tín của công ty.</li>



<li>Mức độ nghiêm trọng cao, mức độ ưu tiên thấp: Tương tự, đối với trang web điều hàng chuyến bay, lỗi trong chức năng đặt chỗ có thể ở mức nghiêm trọng cao nhưng có thể có mức độ ưu tiên thấp vì nó có thể được lên lịch phát hàng trong chu kỳ tiếp theo. </li>
</ul>



<h3 id="4-ket-luan" class="wp-block-heading">4. Kết luận</h3>



<p>Trong kĩ thuật phần mềm, việc chỉ định sai mức độ nghiêm trọng cho lỗi có thể làm trì hoãn vòng đời kiểm thử phần mềm và có thể có một số tác động mạnh mẽ đến hiệu suất chung của team. Vì vậy, người chịu trách nhiệm cần phải xác định chính xác mức độ ưu tiên và mức độ nghiêm trọng của lỗi. </p>
<p>The post <a href="https://blog.tomosia.com.vn/phan-biet-priority-va-severity-trong-testing/">Phân biệt priority và severity trong testing</a> appeared first on <a href="https://blog.tomosia.com.vn">Tomoshare</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://blog.tomosia.com.vn/phan-biet-priority-va-severity-trong-testing/feed/</wfw:commentRss>
			<slash:comments>4</slash:comments>
		
		
			</item>
		<item>
		<title>Automation Test for iOS (part 1)</title>
		<link>https://blog.tomosia.com.vn/automation-test-for-ios-part-1/</link>
					<comments>https://blog.tomosia.com.vn/automation-test-for-ios-part-1/#comments</comments>
		
		<dc:creator><![CDATA[Vo Phuong]]></dc:creator>
		<pubDate>Tue, 03 Oct 2023 07:16:09 +0000</pubDate>
				<category><![CDATA[IOS]]></category>
		<category><![CDATA[Automation Test]]></category>
		<category><![CDATA[KIF]]></category>
		<guid isPermaLink="false">https://blog.tomosia.com.vn/?p=299</guid>

					<description><![CDATA[<p>Đối với công việc lâp trình phần mềm thì Unit Test và UI Test là những việc vô&#8230;</p>
<p>The post <a href="https://blog.tomosia.com.vn/automation-test-for-ios-part-1/">Automation Test for iOS (part 1)</a> appeared first on <a href="https://blog.tomosia.com.vn">Tomoshare</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>Đối với công việc lâp trình phần mềm thì Unit Test và UI Test là những việc vô cùng quan trọng trong việc bảo đảm 1 phần mềm đạt chất lượng tốt. Bài viết này, mình chỉ tập trung chủ yếu vào UI Test. Với lập trình viên iOS thì việc viết UI Test đã có sự support từ Apple với XCTest framework. Nhưng sau khi làm thử với XCTest framework thì thấy nó khó cho việc viết UITest cho chúng ta. Nên mình đã tìm hiểu được 1 framework cho việc viết UITest là <a href="https://github.com/kif-framework/KIF"><strong>KIF framewok</strong></a></p>



<h2 id="1-cai-dat-kif" class="wp-block-heading">1. Cài đặt KIF</h2>



<p>Điều đầu tiên, để sử dụng được KIF thì chúng ta cần tạo target cho việc test của chúng ta. Ở đây, KIF không sử dụng&nbsp;<strong>iOS UI Testing Bundle</strong>&nbsp;mà sử dụng&nbsp;<strong>iOS Unit Testing Bundle</strong>.Nên trong trường hợp bạn nào đã có unit test ở trong project thì cần chọn 1 trong 2 target để chạy test.</p>



<p>Chọn dự án của bạn trong Xcode và nhấp vào &#8220;Add Target&#8221; ở góc dưới bên trái của trình soạn thảo. Chọn iOS -&gt; Test -&gt; iOS Unit Testing Bundle. Hãy cung cấp cho nó một tên như &#8220;Acceptance Tests&#8221;, &#8220;UI Tests&#8221;, hoặc cái gì đó cho thấy ý định của quá trình test của bạn.</p>



<p>Acceptance Test Target của bạn được tạo và sẽ có thêm 1 file đi cùng với nó, ex: &#8220;Acceptance_Tests.swift&#8221; khớp với tên target. Hãy xoá nó đi.</p>



<h3 id="1-1-cai-dat-voi-pod" class="wp-block-heading">1.1 Cài đặt với Pod</h3>



<p>Khi Test Target của bạn đã được thiết lập, thêm đoạn mã dưới đây vào Podfile của bạn. Sử dụng đúng target cần cài đặt KIF</p>



<div class="wp-block-kevinbatdorf-code-block-pro" data-code-block-pro-font-family="Code-Pro-JetBrains-Mono" style="font-size:.875rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)"><span style="display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#282A36"><svg xmlns="http://www.w3.org/2000/svg" width="54" height="14" viewBox="0 0 54 14"><g fill="none" fill-rule="evenodd" transform="translate(1 1)"><circle cx="6" cy="6" r="6" fill="#FF5F56" stroke="#E0443E" stroke-width=".5"></circle><circle cx="26" cy="6" r="6" fill="#FFBD2E" stroke="#DEA123" stroke-width=".5"></circle><circle cx="46" cy="6" r="6" fill="#27C93F" stroke="#1AAB29" stroke-width=".5"></circle></g></svg></span><span role="button" tabindex="0" data-code="target 'Your Apps' do
  ...
end

target 'Acceptance Tests' do
  pod 'KIF', :configurations =&gt; ['Debug']
end" style="color:#F8F8F2;display:none" aria-label="Copy" class="code-block-pro-copy-button"><svg xmlns="http://www.w3.org/2000/svg" style="width:24px;height:24px" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2"><path class="with-check" stroke-linecap="round" stroke-linejoin="round" d="M4.5 12.75l6 6 9-13.5"></path><path class="without-check" stroke-linecap="round" stroke-linejoin="round" d="M16.5 8.25V6a2.25 2.25 0 00-2.25-2.25H6A2.25 2.25 0 003.75 6v8.25A2.25 2.25 0 006 16.5h2.25m8.25-8.25H18a2.25 2.25 0 012.25 2.25V18A2.25 2.25 0 0118 20.25h-7.5A2.25 2.25 0 018.25 18v-1.5m8.25-8.25h-6a2.25 2.25 0 00-2.25 2.25v6"></path></svg></span><pre class="shiki dracula" style="background-color: #282A36" tabindex="0"><code><span class="line"><span style="color: #F8F8F2">target &#39;Your Apps&#39; </span><span style="color: #FF79C6">do</span></span>
<span class="line"><span style="color: #F8F8F2">  </span><span style="color: #FF79C6">...</span></span>
<span class="line"><span style="color: #F8F8F2">end</span></span>
<span class="line"></span>
<span class="line"><span style="color: #F8F8F2">target &#39;Acceptance Tests&#39; </span><span style="color: #FF79C6">do</span></span>
<span class="line"><span style="color: #F8F8F2">  pod &#39;KIF&#39;, </span><span style="color: #FF79C6">:</span><span style="color: #F8F8F2">configurations </span><span style="color: #FF79C6">=&gt;</span><span style="color: #F8F8F2"> [&#39;Debug&#39;]</span></span>
<span class="line"><span style="color: #F8F8F2">end</span></span></code></pre></div>



<p>Sau khi chạy <code>pod install</code> thì công việc tiếp theo là làm theo <strong>Cấu hình Test Target</strong> ở bên dưới để cấu hình thích hợp cho nó</p>



<h3 id="1-2-cai-voi-static-library" class="wp-block-heading">1.2 Cài với static library</h3>



<p>Để cài đặt KIF, bạn cần liên kết static library libKIF trực tiếp vào ứng dụng của bạn. Tải xuống nguồn từ&nbsp;<a href="https://github.com/kif-framework/KIF">KIF</a>&nbsp;và làm theo hướng dẫn dưới đây.</p>



<p>Chúng tôi sẽ sử dụng một dự án đơn giản làm ví dụ và bạn có thể tìm thấy nó trong Documentation/Examples/Testable Swift trong reposity của KIF.</p>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="825" height="453" src="http://blog.tomosia.com.vn/wp-content/uploads/2023/10/image-1.png" alt="" class="wp-image-300" srcset="https://blog.tomosia.com.vn/wp-content/uploads/2023/10/image-1.png 825w, https://blog.tomosia.com.vn/wp-content/uploads/2023/10/image-1-300x165.png 300w, https://blog.tomosia.com.vn/wp-content/uploads/2023/10/image-1-768x422.png 768w, https://blog.tomosia.com.vn/wp-content/uploads/2023/10/image-1-380x209.png 380w, https://blog.tomosia.com.vn/wp-content/uploads/2023/10/image-1-800x439.png 800w" sizes="auto, (max-width: 825px) 100vw, 825px" /></figure>



<h4 id="them-kif-vao-du-an" class="wp-block-heading">Thêm KIF vào dự án</h4>



<p>Bước đầu tiên là thêm dự án KIF vào thư mục con của ./Frameworks/KIF của dự án. Nếu dự án của bạn sử dụng Git để kiểm soát phiên bản, bạn có thể sử dụng submodules để cập nhật trong tương lai dễ dàng hơn:</p>



<pre class="wp-block-preformatted">cd /path/to/MyApplicationSource
mkdir Frameworks
git submodule add https://github.com/kif-framework/KIF.git Frameworks/KIF</pre>



<h4 id="them-kif-vao-workspace" class="wp-block-heading">Thêm KIF vào Workspace</h4>



<p>Hãy để dự án của bạn biết về KIF bằng cách thêm dự án KIF vào không gian làm việc cùng với dự án chính của bạn. Tìm KIF.xcodeproj trong Finder và kéo nó vào Project Navigator (⌘1).</p>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="825" height="453" src="http://blog.tomosia.com.vn/wp-content/uploads/2023/10/image-2.png" alt="" class="wp-image-301" srcset="https://blog.tomosia.com.vn/wp-content/uploads/2023/10/image-2.png 825w, https://blog.tomosia.com.vn/wp-content/uploads/2023/10/image-2-300x165.png 300w, https://blog.tomosia.com.vn/wp-content/uploads/2023/10/image-2-768x422.png 768w, https://blog.tomosia.com.vn/wp-content/uploads/2023/10/image-2-380x209.png 380w, https://blog.tomosia.com.vn/wp-content/uploads/2023/10/image-2-800x439.png 800w" sizes="auto, (max-width: 825px) 100vw, 825px" /></figure>



<h3 id="1-3-cau-hinh-test-target" class="wp-block-heading">1.3 Cấu hình Test Target</h3>



<p>Bây giờ, bạn đã có test target cho việc viết UI Test của bạn. Tiếp theo là thêm các thư viện cần thiết cho dự án, chúng ta chọn trong <strong>Project Navigator</strong> và vào Test Target mà bạn đã tạo ra, chọn tab <strong>&#8220;Build Phases&#8221;</strong>. Trong phần <strong>&#8220;Link Binary With Libraries&#8221;</strong>, hãy nhấn nút &#8220;+&#8221;. Trong bảng xuất hiện, chọn &#8220;libKIF.a&#8221; và nhấp vào <strong>&#8220;Add&#8221;</strong>. Lặp lại quá trình cho <strong>CoreGraphics.framework</strong> và <strong>QuartzCore.framework</strong> . KIF yêu cầu IOKit.framework, nhưng nó không nằm trong các khuôn khổ hệ thống. Để liên kết đến nó, thêm &#8220;-framework IOKit&#8221; vào <strong>&#8220;Other Linker Flags&#8221;</strong>.</p>



<figure class="wp-block-image size-full is-resized"><img loading="lazy" decoding="async" src="http://blog.tomosia.com.vn/wp-content/uploads/2023/10/image-3.png" alt="" class="wp-image-302" style="width:679px;height:373px" width="679" height="373" srcset="https://blog.tomosia.com.vn/wp-content/uploads/2023/10/image-3.png 825w, https://blog.tomosia.com.vn/wp-content/uploads/2023/10/image-3-300x165.png 300w, https://blog.tomosia.com.vn/wp-content/uploads/2023/10/image-3-768x422.png 768w, https://blog.tomosia.com.vn/wp-content/uploads/2023/10/image-3-380x209.png 380w, https://blog.tomosia.com.vn/wp-content/uploads/2023/10/image-3-800x439.png 800w" sizes="auto, (max-width: 679px) 100vw, 679px" /></figure>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="825" height="453" src="http://blog.tomosia.com.vn/wp-content/uploads/2023/10/image-4.png" alt="" class="wp-image-303" srcset="https://blog.tomosia.com.vn/wp-content/uploads/2023/10/image-4.png 825w, https://blog.tomosia.com.vn/wp-content/uploads/2023/10/image-4-300x165.png 300w, https://blog.tomosia.com.vn/wp-content/uploads/2023/10/image-4-768x422.png 768w, https://blog.tomosia.com.vn/wp-content/uploads/2023/10/image-4-380x209.png 380w, https://blog.tomosia.com.vn/wp-content/uploads/2023/10/image-4-800x439.png 800w" sizes="auto, (max-width: 825px) 100vw, 825px" /></figure>



<p>KIF được viết bằng Objective C nên các bạn cần thêm <code>-ObjC</code> vào <strong>&#8220;Other Linker Flags&#8221;</strong> trong Build Settings của Test Target</p>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="825" height="453" src="http://blog.tomosia.com.vn/wp-content/uploads/2023/10/image-5.png" alt="" class="wp-image-304" srcset="https://blog.tomosia.com.vn/wp-content/uploads/2023/10/image-5.png 825w, https://blog.tomosia.com.vn/wp-content/uploads/2023/10/image-5-300x165.png 300w, https://blog.tomosia.com.vn/wp-content/uploads/2023/10/image-5-768x422.png 768w, https://blog.tomosia.com.vn/wp-content/uploads/2023/10/image-5-380x209.png 380w, https://blog.tomosia.com.vn/wp-content/uploads/2023/10/image-5-800x439.png 800w" sizes="auto, (max-width: 825px) 100vw, 825px" /></figure>



<p>Ở phần này mình chỉ giới thiệu về việc thêm KIF framework vào dự án của chúng. Ở phần sau mình sẽ demo về KIF framework</p>



<p></p>



<p></p>
<p>The post <a href="https://blog.tomosia.com.vn/automation-test-for-ios-part-1/">Automation Test for iOS (part 1)</a> appeared first on <a href="https://blog.tomosia.com.vn">Tomoshare</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://blog.tomosia.com.vn/automation-test-for-ios-part-1/feed/</wfw:commentRss>
			<slash:comments>4</slash:comments>
		
		
			</item>
		<item>
		<title>Tại sao cần phải Automation Test?</title>
		<link>https://blog.tomosia.com.vn/tai-sao-can-phai-automation-testing/</link>
					<comments>https://blog.tomosia.com.vn/tai-sao-can-phai-automation-testing/#comments</comments>
		
		<dc:creator><![CDATA[admin_tomosia]]></dc:creator>
		<pubDate>Mon, 02 Oct 2023 10:12:23 +0000</pubDate>
				<category><![CDATA[Test]]></category>
		<category><![CDATA[Automation Test]]></category>
		<guid isPermaLink="false">https://blog.tomosia.com.vn/?p=264</guid>

					<description><![CDATA[<p>Khái niệm Automation Test là gì? Tại sao cần phải sử dụng Automation Test? Làm thế nào để&#8230;</p>
<p>The post <a href="https://blog.tomosia.com.vn/tai-sao-can-phai-automation-testing/">Tại sao cần phải Automation Test?</a> appeared first on <a href="https://blog.tomosia.com.vn">Tomoshare</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<figure class="wp-block-gallery has-nested-images columns-default is-cropped wp-block-gallery-1 is-layout-flex wp-block-gallery-is-layout-flex">
<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="318" height="159" data-id="358" src="http://blog.tomosia.com.vn/wp-content/uploads/2023/10/Automation-Test.jpg" alt="" class="wp-image-358" srcset="https://blog.tomosia.com.vn/wp-content/uploads/2023/10/Automation-Test.jpg 318w, https://blog.tomosia.com.vn/wp-content/uploads/2023/10/Automation-Test-300x150.jpg 300w" sizes="auto, (max-width: 318px) 100vw, 318px" /></figure>
</figure>



<h2 id="khai-niem-automation-test-la-gi" class="wp-block-heading">Khái niệm Automation Test là gì?</h2>



<ul class="wp-block-list">
<li> Hiểu đơn giản là một quá trình xử lý tự động các bước thực hiện một test case và được thực hiện bởi phần mềm là Automation Testing Tool, đóng một vai trò quan trọng góp phần nâng cao năng suất kiểm thử, giảm thiểu lỗi cũng như sự nhàm chán với việc kiểm thử bằng tay trong một thời gian dài hoặc lặp đi lặp lại.<br></li>
</ul>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="737" height="360" src="http://blog.tomosia.com.vn/wp-content/uploads/2023/10/Screenshot_11.png" alt="" class="wp-image-329" srcset="https://blog.tomosia.com.vn/wp-content/uploads/2023/10/Screenshot_11.png 737w, https://blog.tomosia.com.vn/wp-content/uploads/2023/10/Screenshot_11-300x147.png 300w, https://blog.tomosia.com.vn/wp-content/uploads/2023/10/Screenshot_11-380x186.png 380w" sizes="auto, (max-width: 737px) 100vw, 737px" /></figure>



<p><br></p>



<h2 id="tai-sao-can-phai-su-dung-automation-test" class="wp-block-heading">Tại sao cần phải sử dụng Automation Test?</h2>



<ul class="wp-block-list">
<li>Giúp tiết kiệm chi phí và thời gian trong việc thực hiện testcase.</li>



<li>Giúp test hết toàn bộ dữ liệu mà không thấy nhàm chán và mệt mỏi.</li>



<li>Giúp tăng phạm vi kiểm tra. Các tập lệnh thử nghiệm có thể tái sử dụng lại nhiều lần.</li>



<li>Kiểm thử tự động không cần đến sự can thiệp của con người. Bạn có thể chạy thử nghiệm tự động mà không cần giám sát (Đỡ phải overnight cùng dự án).</li>
</ul>



<h2 id="lam-the-nao-de-tro-thanh-mot-automation-test" class="wp-block-heading">Làm thế nào để trở thành một Automation Test?</h2>



<ul class="wp-block-list">
<li>Nắm được kiến thức về các loại Test: Unit/Integration/System/Sanity/Regression test/…. là gì?</li>



<li>Phân tích giá trị biên/Phân vùng tương đương/Biểu đồ kết quả/Đoán lỗi/… là gì?</li>



<li>Sử dụng thành thạo thư viện của Selenium WebDriver API bởi Selenium open source, dễ sử dụng, cộng đồng lớn.</li>



<li>Thành thạo ít nhất một ngôn ngữ lập trình thông dụng, hỗ trợ cho việc scripting trên test tools: Java/C#/Python/Ruby/JS/…</li>



<li>Sử dụng thành thạo ít nhất 1 framework testing: Junit/TestNG/NUnit/… từ đây sẽ giúp bạn rất nhiều trong việc build framework, hỗ trợ trong việc phân nhóm, quản lý test script, report, prepare data/environment/browsers.</li>



<li>Kỹ năng về coding/IDE: Debug, coding convention, source version control (GIT, SVN,…), cách sử dụng IDE: Visual Studio, Eclipse, IntelliJ…, làm việc với database…<br></li>
</ul>



<h2 id="cach-ban-than-da-hoc-va-ap-dung-automation-test-vao-du-an-nhu-the-nao" class="wp-block-heading">Cách bản thân đã học và áp dụng Automation Test vào dự án như thế  nào?</h2>



<ul class="wp-block-list">
<li> Setting môi trường</li>



<li>Base lập trình về ngôn ngữ Java.</li>



<li>Có kinh nghiệm về Manual Tester.</li>



<li>Thành thạo code về Selenium.</li>



<li>Bản demo: <a href="https://drive.google.com/file/d/1RHbDPky47k9l-_6RhRQczoqacHGPlSQv/view?usp=drive_link">https://drive.google.com/file/d/1RHbDPky47k9l-_6RhRQczoqacHGPlSQv/view?usp=drive_link</a></li>
</ul>



<h2 id="cai-dat-cau-hinh-selenium-java-va-eclipse-windows-os" class="wp-block-heading">Cài đặt/ cấu hình Selenium Java và Eclipse (Windows OS)</h2>



<h3 id="cai-dat-java-jdk" class="wp-block-heading has-text-align-center"><strong><strong>Cài đặt Java JDK</strong></strong></h3>



<ul class="wp-block-list">
<li>Recommend nên dùng Java version 1.8 hoặc 1.11
<ul class="wp-block-list">
<li>Download trên trang chủ:&nbsp;<a href="https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html" target="_blank" rel="noreferrer noopener">https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html</a></li>



<li>Nếu các bạn ngại đăng kí tài khoản trên Oracle thì tải file cài đặt Offline:&nbsp;<em><a href="https://drive.google.com/drive/folders/1iCTMnWFQzMrMoN2ZSZxHl4dDuIhnqztO" target="_blank" rel="noreferrer noopener">https://drive.google.com/drive/folders/1iCTMnWFQzMrMoN2ZSZxHl4dDuIhnqztO</a></em></li>



<li>Trong này mình đã để sẵn các file Offline:&nbsp;<strong>Java/ Eclipse/ Firefox/ Selenium/ Driver</strong></li>
</ul>
</li>
</ul>



<figure class="wp-block-image size-full is-resized"><img loading="lazy" decoding="async" src="http://blog.tomosia.com.vn/wp-content/uploads/2023/10/image-9.png" alt="" class="wp-image-336" style="width:680px;height:257px" width="680" height="257" srcset="https://blog.tomosia.com.vn/wp-content/uploads/2023/10/image-9.png 823w, https://blog.tomosia.com.vn/wp-content/uploads/2023/10/image-9-300x113.png 300w, https://blog.tomosia.com.vn/wp-content/uploads/2023/10/image-9-768x290.png 768w, https://blog.tomosia.com.vn/wp-content/uploads/2023/10/image-9-380x144.png 380w, https://blog.tomosia.com.vn/wp-content/uploads/2023/10/image-9-800x302.png 800w" sizes="auto, (max-width: 680px) 100vw, 680px" /></figure>



<ul class="wp-block-list">
<li>Sau khi tải về -&gt; cài đặt bình thường -&gt;&nbsp;<strong>click Next -&gt; Install</strong>&nbsp;cho đến khi hoàn tất</li>



<li>Sau khi cài đặt xong bật command line (cmd) kiểm tra version đã cài đặt thành công
<ul class="wp-block-list">
<li><em><strong>java -version</strong></em></li>
</ul>
</li>
</ul>



<figure class="wp-block-image size-full is-resized"><img loading="lazy" decoding="async" src="http://blog.tomosia.com.vn/wp-content/uploads/2023/10/image-10.png" alt="" class="wp-image-339" style="width:680px;height:218px" width="680" height="218" srcset="https://blog.tomosia.com.vn/wp-content/uploads/2023/10/image-10.png 819w, https://blog.tomosia.com.vn/wp-content/uploads/2023/10/image-10-300x96.png 300w, https://blog.tomosia.com.vn/wp-content/uploads/2023/10/image-10-768x246.png 768w, https://blog.tomosia.com.vn/wp-content/uploads/2023/10/image-10-380x122.png 380w, https://blog.tomosia.com.vn/wp-content/uploads/2023/10/image-10-800x256.png 800w" sizes="auto, (max-width: 680px) 100vw, 680px" /></figure>



<h3 id="cai-dat-java-jdk-2" class="wp-block-heading has-text-align-center"><strong><strong>Cài đặt Java JDK</strong></strong></h3>



<ul class="wp-block-list">
<li>Link download:&nbsp;<a rel="noreferrer noopener" href="https://www.eclipse.org/downloads/packages/release/" target="_blank">https://www.eclipse.org/downloads/packages/release/</a>, tùy vào hệ thống của bạn phiên bản 32/64 bit để lựa chọn cho phù hợp. Chọn bản&nbsp;<strong>Eclipse IDE for Java Developer</strong>&nbsp;là đáp ứng đủ cho nhu cầu công&nbsp;việc.</li>
</ul>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="816" height="442" src="http://blog.tomosia.com.vn/wp-content/uploads/2023/10/image-11.png" alt="" class="wp-image-340" srcset="https://blog.tomosia.com.vn/wp-content/uploads/2023/10/image-11.png 816w, https://blog.tomosia.com.vn/wp-content/uploads/2023/10/image-11-300x163.png 300w, https://blog.tomosia.com.vn/wp-content/uploads/2023/10/image-11-768x416.png 768w, https://blog.tomosia.com.vn/wp-content/uploads/2023/10/image-11-380x206.png 380w, https://blog.tomosia.com.vn/wp-content/uploads/2023/10/image-11-800x433.png 800w" sizes="auto, (max-width: 816px) 100vw, 816px" /></figure>



<h3 id="tai-ve-thu-vien-selenium" class="wp-block-heading has-text-align-center"><strong>Tải về thư viện Selenium</strong></h3>



<ul class="wp-block-list">
<li>Link download:&nbsp;<a href="https://selenium-release.storage.googleapis.com/index.html?path=2.53/" target="_blank" rel="noreferrer noopener">http://selenium-release.storage.googleapis.com/index.html?path=2.53/</a></li>



<li>Chọn và tải:&nbsp;<strong>selenium-server-standalone-2.53.1.jar</strong></li>
</ul>



<h3 id="tao-du-an-java" class="wp-block-heading has-text-align-center"><strong>Tạo dự án Java</strong></h3>



<ul class="wp-block-list">
<li>Xả nén&nbsp;<strong>Elipse IDE &gt;</strong>&nbsp;chạy&nbsp;<strong>eclipse.exe</strong>&nbsp;từ bước 2 đã tải về</li>



<li>Tạo 1 thư mục ngang hàng vs thư mục eclipse – đặt tên là&nbsp;<strong>my_work_space</strong></li>



<li>Set&nbsp;<strong>workspace</strong>&nbsp;– mục đích để nếu cài đặt lại hệ thống thì eclipse sẽ tự load lại các dự án/tùy chọn bạn đã làm việc trước đó – ko cần phải cài đặt lại</li>
</ul>



<figure class="wp-block-image size-full is-resized"><img loading="lazy" decoding="async" src="http://blog.tomosia.com.vn/wp-content/uploads/2023/10/image-12.png" alt="" class="wp-image-345" style="width:680px;height:328px" width="680" height="328" srcset="https://blog.tomosia.com.vn/wp-content/uploads/2023/10/image-12.png 828w, https://blog.tomosia.com.vn/wp-content/uploads/2023/10/image-12-300x145.png 300w, https://blog.tomosia.com.vn/wp-content/uploads/2023/10/image-12-768x370.png 768w, https://blog.tomosia.com.vn/wp-content/uploads/2023/10/image-12-380x183.png 380w, https://blog.tomosia.com.vn/wp-content/uploads/2023/10/image-12-800x386.png 800w" sizes="auto, (max-width: 680px) 100vw, 680px" /></figure>



<ul class="wp-block-list">
<li>Tạo mới Project:&nbsp;<strong>File &gt; New &gt; Java Project &gt; [Đặt tên Project] &gt; Finish</strong>
<ul class="wp-block-list">
<li>Project name:&nbsp;<strong>Selenium Tutorials</strong></li>
</ul>
</li>
</ul>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="818" height="613" src="http://blog.tomosia.com.vn/wp-content/uploads/2023/10/image-13.png" alt="" class="wp-image-346" srcset="https://blog.tomosia.com.vn/wp-content/uploads/2023/10/image-13.png 818w, https://blog.tomosia.com.vn/wp-content/uploads/2023/10/image-13-300x225.png 300w, https://blog.tomosia.com.vn/wp-content/uploads/2023/10/image-13-768x576.png 768w, https://blog.tomosia.com.vn/wp-content/uploads/2023/10/image-13-380x285.png 380w, https://blog.tomosia.com.vn/wp-content/uploads/2023/10/image-13-800x600.png 800w" sizes="auto, (max-width: 818px) 100vw, 818px" /></figure>



<ul class="wp-block-list">
<li>Tạo mới Package:&nbsp;<strong>Right click vào thư mục src &gt; New &gt; Package &gt; [Đặt tên Package] &gt;Finish</strong>
<ul class="wp-block-list">
<li>Package name:&nbsp;<strong>automationfc.com</strong></li>
</ul>
</li>
</ul>



<figure class="wp-block-image size-full is-resized"><img loading="lazy" decoding="async" src="http://blog.tomosia.com.vn/wp-content/uploads/2023/10/image-14.png" alt="" class="wp-image-348" style="width:679px;height:494px" width="679" height="494" srcset="https://blog.tomosia.com.vn/wp-content/uploads/2023/10/image-14.png 547w, https://blog.tomosia.com.vn/wp-content/uploads/2023/10/image-14-300x218.png 300w, https://blog.tomosia.com.vn/wp-content/uploads/2023/10/image-14-380x276.png 380w" sizes="auto, (max-width: 679px) 100vw, 679px" /></figure>



<h3 id="them-thu-vien-selenium-vao-du-an" class="wp-block-heading has-text-align-center"><strong>Thêm thư viện Selenium vào dự án</strong></h3>



<ul class="wp-block-list">
<li>Tạo mới 1 thư mục trong project để lưu trữ các java library hoặc browser driver cần dùng
<ul class="wp-block-list">
<li>Đặt tên thư mục là&nbsp;<strong>lib</strong></li>
</ul>
</li>
</ul>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="649" height="227" src="http://blog.tomosia.com.vn/wp-content/uploads/2023/10/image-15.png" alt="" class="wp-image-349" srcset="https://blog.tomosia.com.vn/wp-content/uploads/2023/10/image-15.png 649w, https://blog.tomosia.com.vn/wp-content/uploads/2023/10/image-15-300x105.png 300w, https://blog.tomosia.com.vn/wp-content/uploads/2023/10/image-15-380x133.png 380w" sizes="auto, (max-width: 649px) 100vw, 649px" /></figure>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="742" height="517" src="http://blog.tomosia.com.vn/wp-content/uploads/2023/10/image-16.png" alt="" class="wp-image-350" srcset="https://blog.tomosia.com.vn/wp-content/uploads/2023/10/image-16.png 742w, https://blog.tomosia.com.vn/wp-content/uploads/2023/10/image-16-300x209.png 300w, https://blog.tomosia.com.vn/wp-content/uploads/2023/10/image-16-200x140.png 200w, https://blog.tomosia.com.vn/wp-content/uploads/2023/10/image-16-380x265.png 380w" sizes="auto, (max-width: 742px) 100vw, 742px" /></figure>



<ul class="wp-block-list">
<li>Copy thư viện&nbsp;<strong>selenium-server-standalone-2.53.1.jar từ bước 03 ở trên</strong>dán vào thư mục&nbsp;<strong>lib</strong></li>
</ul>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="507" height="332" src="http://blog.tomosia.com.vn/wp-content/uploads/2023/10/image-17.png" alt="" class="wp-image-351" srcset="https://blog.tomosia.com.vn/wp-content/uploads/2023/10/image-17.png 507w, https://blog.tomosia.com.vn/wp-content/uploads/2023/10/image-17-300x196.png 300w, https://blog.tomosia.com.vn/wp-content/uploads/2023/10/image-17-380x249.png 380w" sizes="auto, (max-width: 507px) 100vw, 507px" /></figure>



<ul class="wp-block-list">
<li><strong>Click chuột phải</strong>&nbsp;vào thư viện và&nbsp;<strong>Add</strong>&nbsp;vào&nbsp;<strong>Build Path</strong></li>
</ul>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="806" height="392" src="http://blog.tomosia.com.vn/wp-content/uploads/2023/10/image-18.png" alt="" class="wp-image-352" srcset="https://blog.tomosia.com.vn/wp-content/uploads/2023/10/image-18.png 806w, https://blog.tomosia.com.vn/wp-content/uploads/2023/10/image-18-300x146.png 300w, https://blog.tomosia.com.vn/wp-content/uploads/2023/10/image-18-768x374.png 768w, https://blog.tomosia.com.vn/wp-content/uploads/2023/10/image-18-380x185.png 380w, https://blog.tomosia.com.vn/wp-content/uploads/2023/10/image-18-800x389.png 800w" sizes="auto, (max-width: 806px) 100vw, 806px" /></figure>
<p>The post <a href="https://blog.tomosia.com.vn/tai-sao-can-phai-automation-testing/">Tại sao cần phải Automation Test?</a> appeared first on <a href="https://blog.tomosia.com.vn">Tomoshare</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://blog.tomosia.com.vn/tai-sao-can-phai-automation-testing/feed/</wfw:commentRss>
			<slash:comments>7</slash:comments>
		
		
			</item>
	</channel>
</rss>
