Đề Xuất 3/2023 # Functional Testing Là Gì Và Các Bước Thực Hiện Functional Testing # Top 10 Like | Comforttinhdauthom.com

Đề Xuất 3/2023 # Functional Testing Là Gì Và Các Bước Thực Hiện Functional Testing # Top 10 Like

Cập nhật nội dung chi tiết về Functional Testing Là Gì Và Các Bước Thực Hiện Functional Testing mới nhất trên website Comforttinhdauthom.com. Hy vọng thông tin trong bài viết sẽ đáp ứng được nhu cầu ngoài mong đợi của bạn, chúng tôi sẽ làm việc thường xuyên để cập nhật nội dung mới nhằm giúp bạn nhận được thông tin nhanh chóng và chính xác nhất.

Các loại Test Type cần biết

Functional Testing là gì?

Functional Testing (kiểm thử chức năng) là một trong các quy trình đảm bảo chất lượng nằm trong lĩnh vực kiểm thử phần mềm. Ngoài ra, Functional Testing còn được biết tới là loại kiểm thử hộp đen bởi mã nguồn của ứng dụng không được xem xét trong quá trình kiểm thử. Các chức năng sẽ được kiểm tra thông qua việc nhập các giá trị đầu vào và đánh giá kết quả đầu ra mà không bị ảnh hưởng bởi cấu trúc hay cài đặt bên trong của ứng dụng.

Functional Testing là gì

Mục đích của Functional Testing đó là kiểm thử từng chức năng của ứng dụng. Qua đó có thể kiểm tra các yêu cầu chức năng đã đề xuất trước đó có đạt hay không. Nhờ có Functional Testing mà bạn có thể tránh được những việc kiểm thử dư thừa các chức năng không cần thiết. Đồng thời giúp ngăn chặn nhiều lỗi xuất hiện cùng một thời điểm.

Những kỹ thuật thường dùng trong kiểm thử chức năng bao gồm:

User Navigation Testing: Kiểm thử điều hướng người dùng.

Transaction Screen Testing: Kiểm thử thao tác trên màn hình.

Transaction Flow Testing: Kiểm thử luồng thực hiện.

Report Screen Testing: Kiểm thử màn hình báo cáo.

Report Flow Testing: Kiểm thử luồng báo cáo.

Các bước thực hiện Functional Testing

Thông qua Functional Testing, nhóm tester hoặc QA có thể đảm bảo chức năng phần mềm đạt chất lượng tốt nhất theo đúng thông số kỹ thuật của người dùng đề xuất ban đầu. Để tiến hành kiểm thử chức năng bạn có thể thực hiện theo 6 bước sau:

Bước 1: Xác định các chức năng mà phần mềm chuẩn bị làm.

Bước 2: Xác định bộ dữ liệu đầu vào dựa trên thông số kỹ thuật chức năng.

Bước 3: Xác định bộ dữ liệu đầu ra dựa trên thông số kỹ thuật chức năng.

Bước 4: Tiến hành viết và triển khai các trường hợp kiểm thử.

Bước 5: So sánh kết quả đầu ra với kết quả thực tế.

Bước 6: Đánh giá kết quả vừa so sánh xem đã phù hợp với yêu cầu hay không.

Tìm Hiểu Về Kiểm Thử Chức Năng (Functional Testing) Trong Kiểm Thử Phần Mềm

Kiểm thử chức năng (hay Functional Testing) là một trong các quy trình đảm bảo chất lượng của lĩnh vực kiểm thử phần mềm. Đây là một loại kiểm thử hộp đen ( black box testing), tức là các trường hợp nó cần xét đến sẽ dựa vào đặc tả của ứng dụng/phần mềm hoặc hệ thống đang thử nghiệm. Các chức năng sẽ được kiểm tra bằng cách nhập các giá trị đầu vào và sau đó sẽ kiểm tra, đánh giá các kết quả đầu ra mà không cần quan tâm đến các cấu trúc hay cài đặt bên trong của ứng dụng.

Trong kiểm thử phần mềm có nhiều quy trình, mỗi cái lại có một nhiệm vụ khác nhau.

Kiểm thử đơn vị (Unit testing) sẽ kiểm tra sự khác biệt giữa đặc tả giao tiếp của đơn vị với thực tế đơn vị này cung cấp cho phần mềm.

Kiểm thử hệ thống sẽ đánh giá độ phù hợp của phần mềm với mục tiêu đề ra

Còn với kiểm thử chức năng, nó sẽ làm nốt phần còn lại, đánh giá độ phù hợp của phần mềm với các đặc tả bên ngoài của nó, về các hành vi của phần mềm mà người dùng thấy được.

Kiểm thử chức năng cũng đem lại khá nhiều lợi ích, chẳng hạn như tránh được việc kiểm thử dư thừa với các chức năng không cần thiết, hay ngăn chặn sự đa dạng lỗi tại cùng một thời điểm.

Thông thường kiểm thử chức năng sẽ tiến hành theo 6 bước sau:

Xác định các chức năng mà phần mềm dự kiến sẽ làm (dựa vào đặc tả của phần mềm)

Xác định bộ dữ liệu đầu vào dựa trên các thông số kỹ thuật của chức năng

Xác định bộ dữ liệu đầu ra dựa trên các thông số kỹ thuật của chức năng

Viết và thực thi các trường hợp kiểm thử (test case)

So sánh kết quả đầu ra chuẩn bị ở bước 3 và kết quả thực tế

Dựa vào nhu cầu của khách hàng để đánh giá xem kết quả ở bước 5 có phù hợp hay không

Nhìn chung, khi kiểm thử chức năng, giống như những loại kiểm thử khác, chúng ta sẽ cần làm từ đơn giản đến phức tạp.

Đầu tiên và quan trọng nhất, chúng ta cần hiểu được luồng hoạt động, các quy trình vận hành của sản phẩm phần mềm.

Sau đó chúng ta cần xác định được các nghiệp vụ sử dụng của nó

Chúng ta sẽ kiểm thử các chức năng ở từng màn hình riêng biệt, chẳng hạn như màn hình đăng nhập, màn hình profile …

Sau khi kiểm thử từng màn hình chúng ta sẽ kiểm thử một mô đun chứa nhiều màn hình cùng nhóm

Tiếp đến là kiểm thử một vòng hoàn chỉnh của nghiệp vụ và kiểm tra tất cả các vòng

Cuối cùng chúng ta sẽ giả định như mình là người dùng thực tế, định ra các kịch bản đặc biệt và tiến hành kiểm tra nó.

5.1 Kiểm thử điều hướng của người dùng (user navigation testing)

Trong kỹ thuật này, chúng ta sẽ cần kiểm tra một số thành phần , các liên kết giữa màn hình này tới màn hình khác để đảm bảo cho sự hoạt động liên tục của nghiệp vụ đang thực hiện. Có thể kể đến 1 số thành phần như:

Hệ thống đăng nhập, đăng xuất

Hệ thống thanh điều hướng ( navigation bar, sidebar, menubar)

Hệ thống thanh công cụ (toolbar)

Hệ thống cây phân cấp chức năng

Kiểm thử khả năng điều hướng tập trung trên 2 vấn đề

Người dùng đăng nhập vào hệ thống với một số quyền hạn nhất định.

Người dùng thao tác qua các tính năng một cách tự nhiên không bị đứt quãng và sau đó sẽ đăng xuất.

5.2 Kiểm thử thao tác trên màn hình (transaction screen testing)

Thông thường sẽ là các form nhập liệu, hoặc một số các button chức năng, các options lựa chọn. Có 2 loại thường thấy:

Kết quả sẽ được hiển thị ở một trang khác

Kết quả sẽ được hiển thị ở ngay trang hiện tại

5.3 Kiểm thử luồng thực hiện (transaction flow testing)

Với kỹ thuật này, chúng ta cần thực hiện liền mạch một số thao tác qua nhiều bước với nhiều màn hình khác nhau để đánh giá xem có phù hợp với luồng nghiệp vụ không. Chẳng hạn khi chúng ta muốn mở một khóa học trên hệ thống E-learning nào đó, ta cần làm các bước sau:

Màn hình 1 cho phép tạo khóa học với các thông tin cho trước (VD: tên, nội dung, giới thiệu, thời gian học …)

Màn hình 2 cho phép thêm các môn học cho khóa học

Màn hình 3 dùng để thêm giảng viên cho khóa học

Màn hình 4 dùng để thêm học viên hoặc cho phép học viên đăng ký học

Màn hình 5 để xem kết quả khóa học sau khi tạo thành công.

Chúng ta cần xác định 2 trường hợp

Nếu người dùng thao tác đúng quy trình thì kết quả sẽ cho ra đúng như đặc tả yêu cầu.

Nếu người dùng thao tác không đúng dù chỉ một bước thì sẽ không ra được kết quả.

5.4 Kiểm thử màn hình báo cáo (report screen testing)

Không như màn hình thao tác ở phần 5.2, màn hình báo cáo sẽ không yêu cầu phải nhập liệu. Ở đây cái chúng ta cần kiểm tra là cách hiển thị hay tìm kiếm dữ liệu.

Có rất nhiều cách người dùng có thể đặc tả các dữ liệu cần tìm (như bộ lọc hay nhập các điều kiện tìm kiếm) hoặc cách mà dữ liệu được hiển thị (danh sách, bảng biểu, biểu đồ ….)

Chúng ta cần căn cứ vào đặc tả của ứng dụng để phân tích các trường hợp kiểm thử ( test case), có thể có một số trường hợp như lựa chọn giá trị không phù hợp cho bộ lọc (VD: ngày bắt đầu lớn hay ngày kết thúc) hay dữ liệu không được hiển thị đúng (VD: bảng biểu không có tên các cột)

5.5 Kiểm thử luồng báo cáo (report flow testing)

Ở đây chúng ta cần dựa vào tài liệu đặc tả để biết có bao nhiêu loại thể hiện báo cáo được hỗ trợ bởi phần mềm. Một phần mềm bình thường sẽ có thể hiển thị báo cáo lên màn hình, hoặc là in ra file, in ra giấy bằng máy in. Chúng ta cần đảm bảo có sự thống nhất về mặt nội dung và bố cục giữa tất cả các tài liệu in. Bên cạnh đó cũng cần đảm bảo đủ các phương thức in theo đặc tả. Nhiều lúc còn cần để ý đến định dạng font chữ, hoặc màu sắc nếu là in màu ….

Kiểm thử chức năng và phi chức năng được so sánh như trong bảng sau

Kiểm thử chức năng Kiểm thử phi chức năng

Được thực hiện bằng cách sử dụng đặc tả chức năng do khách hàng cung cấp và xác minh hệ thống theo các yêu cầu chức năng

Dùng để kiểm tra hiệu năng ( performance testing), độ tin cậy ( reliability), khả năng mở rộng ( scalability) và các nghiệp vụ phi chức năng khác của hệ thống

Được thực hiện đầu tiên

Nên được thực hiện ngay sau khi kiểm thử chức năng kết thúc

Có thể sử dụng tool để kiểm thử hoặc kiểm thử bằng tay ( manual testing)

Khi sử dụng tool sẽ hiệu quả hơn

Đầu vào là các yêu cầu nghiệp vụ theo các tài liệu đặc tả

Đầu vào là các thông số như tốc độ tải, độ bảo mật cũng như khả năng mở rộng

Mô tả những thứ sản phẩm phần mềm sẽ làm

Mô tả sản phẩm phần mềm hoạt động như thế nào là tốt

Các loại kiểm thử chức năng thường gặp:

Các loại kiểm thử phi chức năng thường gặp:

* Migration Testing

Cấu Trúc Tổ Chức Dạng Chức Năng Functional Organization Structure Là Gì?

Chắc chắn rồi, phong cách làm việc, vai trò trách nhiệm, văn hóa làm việc phụ thuộc vào loại cấu trúc bạn đang làm việc. Khi làm việc cho một tổ chức bạn cần xem xét bạn thuộc loại cấu trúc tổ chức nào. Có 3 loại cấu trúc tổ chứ được PMBOK đưa ra đó là: Functional Organization Structure, Matrix Organization Structure, và Projectized Organization Structure.

Ở bài này chúng tôi cùng các bạn xem xét về loại hình tổ chức Functional Organization Structure (Cấu trúc tổ chức dạng phòng ban chức năng).

Trong Functional Organization Structure, nhân viên có vai trò cố định và không thay đổi trong khi các loại hình tổ chức khác có sự thay đổi vai trò theo dự án.

Trong Functional Organization Structure, nhân viên chỉ report cho FM, còn ở các mô hình khác nhân viên có thể phải report cho PM hoặc nhiều boss. Ví dụ trong Projectized Organization Structure nhân viên phải report cho PM, trong Matrix Organization Structure nhân viên phải báo cáo cho cả PM và FM (chỉ riêng Weak matrix chỉ báo cáo cho FM). Phong cách làm việc (working style), sự phát triển nghề nghiệp (career growth path) và hệ thống báo cáo phụ thuộc loại hình tổ chức. Bạn sẽ gặp một vài dạng câu hỏi dạng này trong đề thi PMP, do đó bạn trước hết cần hiểu rõ và nắm keywork trong tiếng anh để thi đạt. Tôi sẽ cung cấp cho các bạn cả 2 điều này. Chúng ta hãy bắt đầu nào:

Functional Organization Structure

Functional Organization Structure là cấu trúc tổ chức lâu đời và phổ biến nhất trong các loại cấu trúc tổ chức. Functional Organization Structure là loại cấu trúc tổ chức có thứ bậc (hierarchical) nơi mà nhân viên được nhóm thành từng lĩnh vực chuyên gia khác nhau (thông thường gọi là phòng ban). Những con người trong từng area đó được quản lý bởi 1 FM người mà rất giỏi về lĩnh vực chuyên môn và giúp FM đạt được mục tiêu tổ chức.

Functional Organization Structure phân loại nhân viên theo chức năng thi hành trong tổ chức, ví dụ phòng kinh doanh, phòng marketing, phòng kỹ thuật… Mỗi phòng này có một người đứng đầu và chịu trách nhiệm về hiệu quả của phòng đó và đây cũng chính là cách tổ chức đánh giá hiệu quả hoạt động.

Các phòng ban khác nhau còn có tên gọi khác là “silos” điều này có nghĩa là việc truyền thông trong tổ chức chỉ theo chiều thẳng đứng và không có tính kết nối trực tiếp (Phải thông qua head mới tới được Top management)

Tất cả quyền lực (authority) đều thuộc về FM như là: budget allocation, resource allocation, decision making… Thông thường trong tổ chức dạng Functional Organization Structure không có vai trò PM và nếu có PM thì vai trò của anh ta cũng rất hạn chế và luôn phải xin thẩm quyền từ FM, PM có title là Project Coordinator hoặc Expedier. Thật không may mắn cho PM nào làm việc trong môi trường Functional Organization Structure bởi vì làm việc gì cũng cần thông qua và xin xỏ FM.

Functional Organization Structure phù hợp với các tổ chức mang tính vận hành lặp lại (Ongoing Operation) và sản xuất các sản phẩm mang tính chuẩn hóa ít sự thay đổi như là các doanh nghiệp sản xuất.

Nhân viên được nhóm theo phòng ban, có cơ hội đào sâu kỹ năng, khiến nhân viên đã làm việc nào là chuyên môn hóa, dẫn đến dễ năng suất cao.

Vai trò và Trách nhiệm cố định, dễ dàng ước lượng hiệu quả công việc cho nhân viên.

Giảm kênh truyền thông (communication channels), vì nhân viên chỉ việc báo cáo cho FM.

Không có chồng lắp công việc. Mỗi nhân viên chỉ có 1 sếp, 1 công việc.

Nhân viên trung thành và cảm thấy an toàn khi chỉ làm 1 công việc.

Truyền thông được đánh giá cao.

Nhược điểm của Functional Organization Structure:

Nhân viên cảm thấy lười chán vì cứ phải làm việc lặp lại.

Hệ thônggs đánh giá hiệu quả công việc không đúng sẽ gây xung đột.

Chi phí cho những nhân viên tài năng sẽ cao hơn.

Có sự rời rạc vì FM chỉ quan tâm đến phòng ban mà anh ta quản lý. Dễ bị mất sự liên kết.

Truyền thông giữa các phòng ban khó khăn, điều này làm giảm đi sự sáng tạo và linh hoạt trong tổ chức. Hơn nữa khả năng làm teamwork giữa các phòng ban cực kém.

Nhân viên có kiến thức kém về những điều xảy ra ngoài phòng ban của họ làm việc.

Functional Organization Structure cứng nhắc, cho nên rất khó khăn thích ứng các thay đổi.

Đây được xem như một cấu trúc có tính quan liêu do đó việc đưa ra quyết định xuyên suốt hay bị trì hoãn.

Thông thường FM đưa ra quyết định mà không có sự tư vẫn của team member do đó khi triển khai sẽ gặp nhiều khó khăn tổ chức.

Khi tổ chức lớn mạnh Functional Organization Structure khó thích nghi và khó quản lý, tải công việc sẽ bị thắt cổ chai ở FM.

Mỗi phòng ban có mục tiêu riêng, do đó dễ bị sao nhãng với mục tiêu tổ chức.

How To Use Language Functions To Teach And Learn English

A language function explains why someone says something. For example, if you are teaching a class you’ll have to give instructions. ” Giving Instructions” is the language function. Language functions then require certain grammar. To use our example, giving instructions requires the use of the imperative.

There is a wide range of language functions. Here are examples of guessing, expressing wishes and persuading-all language functions.

Expressing Wishes

Persuading

Thinking about which language function you’d like to use helps you learn phrases used to accomplish these tasks. For example, if you want to make a suggestion you’ll use these phrases:

Using Language Function in Your Learning

It’s important to learn correct grammar such as the tenses, and when to use relative clauses. However, if you think about it, it’s probably just as important to know why you want to say something. What is the purpose? What is the language function?

Teaching Language Functions

Teaching language functions can lead to confusion at times as it’s common to use a wide range of grammatical structures for each function. For example, when expressing wishes students might use the present simple (I want …), conditional sentences (If I had the money, I could …), the verb ‘wish’ for past and present wishes (I wish I had a new car / I wish she had come to the party), and so on. When teaching, it’s best to mix language functions with grammar. Provide functional language as students are ready to learn. In the example above, using “I wish I could go to the party” will likely confuse lower level students. On the other hand, “I’d like to go to the party” or “I want to go to the party” is appropriate for lower level classes.

Beginning Level

Intermediate Level

Making predictions

Comparing and contrasting people, places, and things

Describing spatial and time relations

Relating past events

Expressing opinions

Showing preferences

Making suggestions

Disagreeing

Asking for a favor

Advanced Level

Persuading someone

Generalizing about topics

Interpreting data

Hypothesizing and speculating

Summarizing

Sequencing a presentation or speech

Grammar-Based Learning or Function-Based Learning?

Some courses try to focus on only functional based English. However, I find these courses fall short as the focus is often on NOT speaking about grammar. Unfortunately, students need explanations. Focusing only on function can turn into an exercise of just memorizing specific phrases for specific situations. Mixing the two gradually as students improve their understanding of the underlying grammar will help students put appropriate phrases into use to obtain their functional goals.

Bạn đang đọc nội dung bài viết Functional Testing Là Gì Và Các Bước Thực Hiện Functional Testing trên website Comforttinhdauthom.com. Hy vọng một phần nào đó những thông tin mà chúng tôi đã cung cấp là rất hữu ích với bạn. Nếu nội dung bài viết hay, ý nghĩa bạn hãy chia sẻ với bạn bè của mình và luôn theo dõi, ủng hộ chúng tôi để cập nhật những thông tin mới nhất. Chúc bạn một ngày tốt lành!