SOFTWARE TESTING LÀ GÌ? NHỮNG ĐIỀU BẠN CẦN BIẾT

Nếu bạn là sinh viên mới ra trường, sinh viên đang theo đuổi ngành công nghệ thông tin và muốn đi theo con đường tester thì chắc như đinh những bạn đang đặt ra trong đầu những câu hỏi mung lung như thể : Software testing là gì ? Tester sẽ phải làm những việc làm gì, .. Hãy cùng chúng tôi tìm hiểu và khám phá nhé !

Software testing là gì?

Software testing là gìKiểm thử ứng dụng là quy trình thực thi 1 chương trình với mục tiêu tìm ra lỗi. Kiểm thử ứng dụng bảo vệ loại sản phẩm ứng dụng cung ứng đúng mực, rất đầy đủ và đúng theo nhu yếu của người mua, nhu yếu của sản phẩm đề đã đặt ra .
Vai trò của kiểm thử ứng dụng : Kiểm thử ứng dụng đóng vai trò quan trọng trong việc nhìn nhận và thu được chất lượng cao của loại sản phẩm ứng dụng trong quy trình tăng trưởng. Thông qua quy trình “ kiểm thử – tìm lỗi – sửa lỗi ”, để mẫu sản phẩm mang lại độ hiệu suất cao cao nhất mà không còn lỗi .

Phân loại Software testing 

Phân loại Software testing 

Kiểm thử thủ công: Đó là tester sẽ làm mọi công việc hoàn toàn bằng tay, từ viết test case cho đến thực hiện test, mọi thao tác như nhập điều kiện đầu vào. Hay đó là việc quan sát kết quả thực tế, sau đó so sánh kết quả thực tế với các kết quả mong muốn trong test case, điền kết quả test hoàn toàn bằng thủ công không có một công cụ trợ giúp nào cả. 

Kiểm thử bằng tay thủ công yên cầu bạn phải có vốn kỹ năng và kiến thức về những định nghĩa, kỹ thuật test và tư duy tốt

Kiểm thử tự động: Kiểm thử phần mềm tự động là việc thực hiện kiểm thử phần mềm bằng một chương trình đặc biệt với rất ít hoặc sẽ không có sự tương tác của con người. công việc chính là viết code để thực hiện test tự động chủ yếu thời gian làm việc với code như một dev. 

Làm Auto thì không cần phải nắm chắc kỹ năng và kiến thức về manual test mà cần chắc về những automation tool và frameworks cũng như thao tác trên nhiều ngôn từ lập trình như java, python, C + +, PHP … tùy từng dự án Bất Động Sản .
Kiểm thử tự động hóa tương hỗ bạn triển khai test nhanh gọn và thực thi những ca test khó không thực thi được bằng tay .

Kiểm thử bảo mật: Là kiểm thử phần mềm giúp đảm bảo hệ thống ứng dụng và các phần mềm được bảo vệ an toàn khỏi các mối đe dọa hay bất cứ mối nguy hiểm dẫn đến các tổn thất. Xác định các mối đe dọa đo lường các mối họa tiềm ẩn  để cho hệ thống không ngừng hoạt động hay bị khai thác ngoài ý muốn.

Các kỹ thuật sử dụng trong quá trình Software Testing

Kiểm thử hộp đen

Xem chương trình như 1 “ hộp đen ” .
Kiểm thử dựa trên đặc tả của ứng dụng .
Không chăm sóc cấu trúc bên trong của chương trình, tập trung chuyên sâu tìm những trường hợp mà chương trình không triển khai theo đặc tả của nó .

Kiểm thử hộp đen cố gắng tìm ra các lỗi trong các loại sau:

Các tính năng thiếu hoặc không đúng so với bản đặc tả
Các lỗi thi hành
Lỗi giao diện
Các lỗi cấu trúc tài liệu trong việc truy vấn cơ sở tài liệu bên ngoài
Các lỗi khởi tạo hoặc kết thúc
Các lỗi khác .

Kiểm thử hộp trắng

Kiểm thử hộp trắng còn gọi là kiểm thử cấu trúc. Dựa vào thuật giải đơn cử, vào cấu trúc tài liệu bên trong của đơn vị chức năng ứng dụng cần kiểm thử để xác lập đơn vị chức năng ứng dụng đó có thực thi đúng không
WBT yên cầu kỹ thuật lập trình am hiểu cấu trúc bên trong của ứng dụng ( những logic nhiệm vụ, luồng tài liệu, tính năng, hiệu quả ) .
Phương thức : Chọn những nguồn vào và xem những đầu ra .
Phụ thuộc vào những thiết lập hiện tại của mạng lưới hệ thống và của ứng dụng, nếu có sự đổi khác thì bài test cũng phải đổi khác theo .
Được ứng dụng trong những kiểm tra ở Lever module ( nổi bật ), tích hợp ( có năng lực ) và mạng lưới hệ thống của quy trình test ứng dụng .
kỹ thuật này đa phần được dùng để kiểm thử đơn vị chức năng, kiểm thử từng tác vụ của một lớp tính năng do nó phải tốn rất nhiều thời hạn và công sức của con người .

Kiểm thử hộp xám

Kiểm thử hộp xám là một giải pháp kiểm thử ứng dụng được tích hợp giữa chiêu thức kiểm thử Black Box và White Box. Trong kiểm thử hộp xám, cấu trúc bên trong mẫu sản phẩm chỉ được biết một phần. Tester hoàn toàn có thể truy vấn vào cấu trúc tài liệu bên trong và thuật toán của chương trình với mục tiêu là để phong cách thiết kế những trường hợp kiểm thử, nhưng khi triển khai kiểm thử thì test như người dùng cuối hoặc là ở mức hộp đen .

Unit Testing:

Kiểm thử trên những thành phần độc lập nhỏ nhất của ứng dụng .
Thông thường, ứng dụng được chia nhỏ ra những thành phần độc lập nhau : Function -> Class -> Module -> Package. Sau khi lập trình ra những thành phần, những lập trình viên tự viết chương trình unit testing để bảo vệ tài liệu do mình tạo ra hoạt động giải trí thông thường .
Unit-testing thường được triển khai bởi những developer làm trực tiếp hoặc những leader viết để kiểm thử source code của team tăng trưởng .

Integration Test: Kiểm thử tích hợp

Thực hiện test việc liên kết, ghép nối giữa những unit / module .
Phát hiện ra lỗi tiếp xúc giữa những unit
Phát hiện lỗi tiếp xúc giữa mạng lưới hệ thống và những mạng lưới hệ thống khác ( DB, Queue, … )

Chuẩn bị cho System test

Giai đoạn này Developer phối hợp với bộ phận hạ tầng IT / devops để kiến thiết xây dựng những liên kết giữa những mạng lưới hệ thống ( cron-job, queue / background job, database, api, … ). Sau đó tester hoàn toàn có thể mở màn những bài test về liên kết giữa những module .

System Test – Kiểm thử hệ thống:

Kiểm thử phong cách thiết kế và hàng loạt mạng lưới hệ thống ( sau khi tích hợp ) có thỏa mãn nhu cầu nhu yếu đặt ra hay không .
System test gồm có những loại kiểm thử :
Kiểm thử công dụng ( Functional Test )
Kiểm thử hiệu năng ( Performance Test )
Kiểm thử năng lực chịu tải ( Stress Test hay Load Test )
Kiểm thử thông số kỹ thuật ( Configuration Test )
Kiểm thử bảo mật thông tin ( Security Test )
Kiểm thử năng lực phục sinh ( Recovery Test )

 Acceptance Test – Kiểm thử chấp nhận sản phẩm:

Chứng minh ứng dụng thỏa mãn nhu cầu tổng thể nhu yếu của người mua và người mua gật đầu loại sản phẩm .
Khách hàng hoàn toàn có thể tự test hoặc thuê bên thứ ba thực thi test .

Kiểm thử Alpha (Alpha Test) và kiểm thử Beta (Beta Test).

Kiểm thử Alpha : Được thực thi trong nội bộ của ban phát triển ứng dụng với những cộng tác viên là những tester, người dùng nội bộ hoặc những người mua được mời .
Kiểm thử Beta : Được thực thi với số lượng những “ tester ” lớn hơn nhằm mục đích phát hiện những biến hóa hoặc lỗi trong quy trình đưa ra với người dùng .

Release Testing:

Release testing được thực thi sau khi tiến hành ứng dụng lên mạng lưới hệ thống thật .
Các bộ phận tương quan sẽ chuẩn bị sẵn sàng tập dữ liệu để kiểm thử trên mạng lưới hệ thống production. Đây là quá trình quan trọng, quyết định hành động mẫu sản phẩm sẽ đưa ra để người mua sử dụng hay hoãn lại ( nếu hoàn toàn có thể ) hoặc rollback lại version trước đó .

Quy trình SOFTWARE TESTING

Lập kế hoạch
Xác định nhu yếu kiểm thử .
Xác định những kế hoạch kiểm thử : Xác định phương pháp, loại kiểm thử cần thực thi và tiêu chuẩn đầu ra .
Xác định nguồn nhân lực và thiên nhiên và môi trường triển khai kiểm thử .
Lập thời hạn cho những quá trình kiểm thử :
Đánh giá kế hoạch :
Thiết kế test case ( phong cách thiết kế trường hợp kiểm thử )
Phát triển test script : Bước này không bắt buộc nó tạo ra những test script có năng lực chạy trên máy tính giúp tự động hóa việc thực thi những bước kiểm tra đã định nghĩa ở những bước phong cách thiết kế kiểm thử .
Thực hiện kiểm thử
Thiết lập môi trường tự nhiên và setup : Để thực thi kiểm thử thứ nhất phải xác lập và khởi động môi trường tự nhiên kiểm thử bảo vệ toàn bộ những bộ phận tương quan ( phần cứng, ứng dụng, sever, mạng, tài liệu … ) đã được setup và sẵn sàng chuẩn bị trước khi chính thức khởi đầu thực thi kiểm thử .
Tiến hành kiểm thử theo những trường hợp kiểm thử đã chuẩn bị sẵn sàng .
Thẩm định tác dụng kiểm thử : Sau khi thực thi kiểm thử, xem xét tác dụng kiểm thử, xác lập nguyên do của những lỗi được phát hiện. Nếu thực sự lỗi xảy ra do quy trình kiểm thử, cần phải thay thế sửa chữa và kiểm tra lại từ đầu .
Đánh giá quy trình kiểm thử

Bao gồm xem xét và đánh giá kết quả kiểm thử lỗi, chỉ định các yêu cầu thay đổi và tính toán số liệu liên quan đến quá trình kiểm thử (chẳng hạn số giờ, thời gian kiểm tra, số lượng lỗi…)

Thông báo tới những bên tương quan : Trưởng dự án Bất Động Sản sẽ thông tin cho những bên tương quan về tác dụng kiểm thử đạt được .
Bên trên là những thông tin giúp bạn hoàn toàn có thể hiểu được tầm quan trọng của Software Testing cũng như những việc làm mà một tester cần làm .