.1 Mở file để viết các Unit Test trong iOS

Một phần của tài liệu Giáo trình lập trình di động trên iOS Dành cho bậc Cao đẳng (Trang 114 - 115)

Trong phạm vi giáo trình này chỉ hướng dẫn người học cách viết test case để kiểm thử tính đúng đắn của dữ liệu nên hãy xố tất cả các hàm khơng cần thiết trong lớp đó. Giờ đây chúng ta sẽ viết tất cả các test cases cần thiết để kiểm tra tính đúng đắn của dữ liệu. Mỗi test case sẽ có cấu trúc giống hàm testExample() mới xoá. Bắt đầu của hàm bắt buộc là chữ test (nếu không hệ thống sẽ không hoạt động như mong muốn) và tiếp theo là tên của Unit test ta muốn xây dựng (Nguyên tắc viết các test cases như đã học trong môn học Kiểm thử phần mềm). Rõ ràng ở đây chúng ta cần hai hàm để kiểm tra mọi trường hợp thành công và mọi trường hợp thất bại khi tạo mới đối tượng món ăn và trong mỗi hàm cần xem xét đến mọi ràng buộc cũng như các điều kiện biên. Trường hợp thành công ta cần kiểm tra với tên bất kỳ không rỗng cùng giá trị rating nằm trong khoảng cho phép (chỉ cần kiểm tra hai giá trị biên là đủ). Trường hợp không thành công ta cần kiểm tra với giá trị rating nằm ngoài khoảng (-1 và 6 là đủ) và tên rỗng.

Lớp Unit test sẽ như sau:

class FoodManagement2020Tests: XCTestCase {

// Test the Succeeds of Initialization of a meal func testMealInitializationSucceeds(){

// Test Zero rating

let zeroRatingMeal = Meal(name: "Zero rating meal", image: nil, rating: 0)

XCTAssertNotNil(zeroRatingMeal) // Test the highest rating value

let highestRatingMeal = Meal(name: "Highest rating", image: nil, rating: 5)

XCTAssertNotNil(highestRatingMeal) }

// Test the Fails of Initialization of a meal func testMealInitializationFails() {

// Test nagative rating value

let negativeRatingMeal = Meal(name: "Nagative rating", image: nil, rating: -1)

XCTAssertNil(negativeRatingMeal) // Test over rating value

let overRatingMeal = Meal(name: "Over rating meal", image: nil, rating: 6)

XCTAssertNil(overRatingMeal) // Test emtry name

let emtryNameMeal = Meal(name: "", image: nil, rating: 4) XCTAssertNil(emtryNameMeal)

} }

3.2.2 Kiểm thử và điều chỉnh

Thực hiện chạy Unit Test bằng cách chọn: Product => Test, XCTest framework sẽ tiến hành thực hiện các unit test và cho kết quả mong muốn. Nếu pass sẽ có check mầu xanh, nếu chưa đạt sẽ có check mầu đỏ, khi đó cần điều chỉnh lại datamodel cho đến khi nào mọi unit test đều pass hết (Hình 3.2.2.1).

Một phần của tài liệu Giáo trình lập trình di động trên iOS Dành cho bậc Cao đẳng (Trang 114 - 115)

Tải bản đầy đủ (PDF)

(137 trang)