Có khung kiểm tra đơn vị cho đánh dấu HTML không? [đóng cửa]


8

Tôi làm việc tại một cửa hàng thiết kế web. Quy trình công việc của chúng tôi được chia thành hai phần: lập trình viên frontend tạo các mẫu html và css tĩnh của thiết kế trang web, sau đó các lập trình viên phụ trợ buộc các mẫu vào một CMS.

Chúng tôi có một bộ chức năng chung cho các trang web của mình và tôi tự hỏi liệu có khung kiểm tra đơn vị nào chúng tôi có thể sử dụng để kiểm tra chức năng này không.

Ví dụ: một trong những nguyên tắc chức năng phổ biến của chúng tôi nói rằng tất cả các liên kết đến pdf phải mở trong một cửa sổ mới . Tôi muốn viết một bài kiểm tra đơn vị giống như thế này

if(a.class = 'pdf_link')
  assert(target='_blank)

Danh sách các khung kiểm thử đơn vị của Wikipedia dường như không có bất cứ thứ gì bao gồm chức năng tương đối đơn giản này (kiểm tra các chuỗi dựa trên mẫu) và tôi nghiêng về việc viết một loạt các tập lệnh bash và buộc chúng vào máy chủ CI của chúng tôi.

Nhưng có cách nào tốt hơn để làm điều này?


Tôi không nghĩ rằng bạn cần một khung kiểm tra đơn vị HTML. Bạn có thể phân tích cú pháp HTML và sau đó chạy thử nghiệm đơn vị đối với các đối tượng giống như bình thường. Bạn đang sử dụng ngôn ngữ lập trình nào?
Người đàn ông Muffin

Câu trả lời:


2

Bạn cần kiểm tra DOM, không phải đầu ra văn bản. Tôi không biết bạn đang phát triển ngôn ngữ nào, nhưng trong PHP có PHPUnit, có thể thực hiện kiểm tra DOM. Nhìn vào sử dụng assertSelectEquals. Pin của tôi sắp hết và tôi không có dây, hoặc tôi sẽ cung cấp cho bạn nhiều hơn.


Vâng, nhưng tôi muốn kiểm tra các tệp HTML tĩnh. Tôi đang phát triển bằng HTML
CamelBlues

@CamelBlues Bạn hiểu nhầm: bạn có thể sử dụng bất kỳ ngôn ngữ lập trình nào để kiểm tra HTML tĩnh. PHPUnit thậm chí còn hỗ trợ Selenium.
Levi Morrison

Năm năm sau, tôi nhận ra đây là câu trả lời đúng.
CamelBlues

6

Tôi tự hỏi nếu có lẽ một cái gì đó như Selenium sẽ làm điều đó? Đây là một cơ chế thử nghiệm chạy trên sự phát triển theo hành vi. Nó có thể chạy qua các hành động UI để bạn xác nhận xem chúng có đúng hay không. Lưu ý rằng tôi đã không sử dụng nó rất nhiều nhưng khi tôi làm nó có vẻ thực sự hữu ích.

Trang chủ Selenium


1
+1: Câu hỏi có thể nói "Đánh dấu HTML" nhưng tất cả các ví dụ là chức năng web đơn giản.
S.Lott

Đây thực sự trông giống như giải pháp tốt nhất cho nhu cầu của tôi (mặc dù sự phức tạp của chính Selenium trông có vẻ hơi đáng sợ)
CamelBlues
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.