5

Tôi đang gặp khó khăn trong việc tìm ra cách thực hiện kiểm tra e2e Angular với Play Framework hoặc với thử nghiệm Tích hợp Play. Tôi cảm thấy AngularJS mất rất nhiều giá trị nếu tôi không thể làm điều này. Tôi không biết làm thế nào tôi sẽ đi về làm e2e với Play. Và theo như thử nghiệm tích hợp Play, webDriver có thể xem các thuộc tính ng nhưng như với trường hợp cho mã tôi đã thử nó không mô phỏng hành vi thích hợp. Bất cứ ai cũng có một kinh nghiệm tương tự hoặc một giải pháp cho điều này? Hoặc có lẽ là có một lựa chọn tốt cho Angular (chẳng hạn như một khuôn khổ MVC với một thư viện tốt) tích hợp với thử nghiệm Play tốt hơn và có thể giúp tôi giảm số lượng dòng của tôi cho mã kết thúc trước không? Không. Tôi đã sử dụng coffeescript, jQuery và Bootstrap. Cảm ơn!Làm thế nào để thực hiện Play Framework với thử nghiệm AngularJS e2e hoặc với thử nghiệm Play

+0

này phụ thuộc vào webdriver bạn đang sử dụng. Bạn đã thử PhantomJS chưa? Tôi đã tìm thấy PhantomJS rất mạnh mẽ. – Tanin

Trả lời

1

Hãy chính xác hơn một chút về "hành vi thích hợp". Lỗi là gì? Có phải vấn đề về việc tích hợp các bài kiểm tra e2e với luồng công việc Play hay chỉ có màu xanh lá cây e2e AngularJS thay vì màu đỏ?

Khó khăn ở đây là để xác định "End-to-end" vì không có định nghĩa tốt của nó, trong wikipedia không có đề cập về nó. Bạn có thể có ý tưởng hay về những gì nó chỉ vì nó là tự nói, và cũng có một chủ đề tuyệt vời về end-to-end tại đây: http://www.geekinterview.com/question_details/40319

Vì vậy, giả sử bạn muốn kiểm tra tất cả các tình huống với Front + Back trong môi trường gần gũi.

Kiểm tra đầu cuối AngularJS có nghĩa vụ phải được thực hiện với Karma, nhưng, cảnh báo, nó sẽ sớm được thay đổi bởi ProtractorJS.

Làm bài kiểm tra E2E với Karma có nhược điểm nghiêm trọng:

  • Nó có thể thất bại nếu bạn thử nghiệm ứng dụng AngularJS của bạn với hỗ trợ của bạn, cụ thể hơn, bất cứ điều gì một chút quá chậm trong backend có thể dẫn đến kiểm tra xanh đôi khi thất bại không có lý do chính đáng.

  • Kẻ giết người bỏ tính năng để làm thử nghiệm E2E thích hợp với góc là: bạn không thể double-click, cuộn chuột vv

Dưới đây là lời khuyên của tôi:

  • Chỉ sử dụng Karma cho thử nghiệm Front-End và sử dụng các lệnh cũ tốt như back-end. Kiểm tra phần tử css thích hợp được hiển thị và yêu cầu HTTP đúng được thực hiện. Nó sẽ cung cấp cho bạn sự tự tin tuyệt vời trên Front-End dev.

  • KHÔNG sử dụng Karma để kiểm tra đầu cuối. Tôi thấy Sikuli hoàn toàn nổi bật để làm công việc này. Sử dụng nó với fitnesse hoặc testNG để tích hợp tốt hơn.

  • Có thể là thước đoJS sẽ thực hiện công việc trong một tương lai tiếp theo.

Sikuli: http://www.sikuli.org/

ví dụ về sikuli FitNesse +: https://github.com/xebia/FitnesseSikuli

thước đo góc: https://github.com/angular/protractor

+0

Bạn đã thành công với thử nghiệm như thế này với Play? – danielbh

+0

Không phải với Play nhưng với chương trình phụ trợ Java trên appengine. Vâng, nó rất thành công theo cách này. Tôi hy vọng sẽ có câu trả lời khác bởi vì đó là một câu hỏi thú vị, có thể có nhiều câu trả lời tốt. Tôi không nói theo cách của tôi là cách để làm, tôi chỉ nói rằng nó đã được chứng minh thành công ... ít nhất một lần;) – bdavidxyz

+0

Được rồi, cảm ơn lời khuyên. Tôi sẽ xem xét tất cả. – danielbh

Các vấn đề liên quan