2012-10-30 29 views
10

Trong khi xây dựng một ứng dụng trang đơn với AngularJS, tôi đang cố gắng tích hợp các bài kiểm tra Jasmine trong bản dựng của mình.Làm thế nào tôi có thể chạy thử nghiệm Jasmine với Karma (được Testacular) từ Bamboo?

Tôi đã làm điều gì đó tương tự trước đó với plugin Maven Jasmine, nhưng tôi không thích kết thúc dự án của mình trong maven chỉ để chạy thử nghiệm Jasmine. Nó có vẻ sạch hơn để sử dụng Karma (đã được Testacular) cho điều này bằng cách nào đó.

Tôi cảm thấy thoải mái rằng tôi sẽ có được những thứ chạy từ một lệnh shell, và tôi đoán là sau đó tôi có thể chạy lệnh từ Bamboo.

Câu hỏi của tôi:

  • Am tôi đi đúng hướng?
  • Làm thế nào tôi có thể thất bại tốt nhất khi xây dựng từ tập lệnh hoặc Bamboo nhận ra kết quả Karma tự động?

Trả lời

8

Câu hỏi hay. Hãy chắc chắn rằng testacular.conf.js được cấu hình để đầu ra junit xml cho tiêu dùng bằng tre

junitReporter = { 
    // will be resolved to basePath (in the same way as files/exclude patterns) 
    outputFile: 'test-results.xml' 
}; 

Bạn có thể cấu hình để chạy Testacular chống lại nhiều trình duyệt và được cấu hình sẵn để sử dụng Chrome, chúng tôi đã chọn để bắt đầu đi không đầu với PhantomJS để làm thử nghiệm đơn vị. Ngoạn mục đã có hoa nhài bên trong.

Đối với CI chúng tôi đang theo dõi các khuyến nghị trong

// Continuous Integration mode 
// if true, it capture browsers, run tests and exit 
singleRun = true; 

Nếu bạn sử dụng Ant rất nhiều (và chúng tôi làm) đôi khi bạn chỉ muốn gắn bó với những gì bạn biết ... vì vậy bạn có thể muốn kiểm ANT, Windows and NodeJS Modules. để chạy các mô-đun nút (nghĩa là thử nghiệm).

Một lưu ý, nếu bạn đang chạy thử nghiệm trên cửa sổ, cài đặt npm của testacular không thành công trên mô-đun hiredis, mà có vẻ chỉ là * nix thân thiện. Vì vậy, đến nay nó hoạt động tốt mà không có nó.

Mất một vài giờ để chứng minh tất cả các công trình này hoạt động. Hy vọng điều này sẽ giúp

--dan

+0

Tuyệt vời, cảm ơn bạn đã chia sẻ. Tôi sẽ bình luận lại ở đây hoặc chỉnh sửa nếu tôi đã tìm thấy một số điều có thể sử dụng làm rõ. Đặc biệt là mẹo junitReporter là một viên ngọc. – iwein

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