Kịch bản này là:Ghi nhật ký bổ sung JBehave
Chúng tôi đang sử dụng JBehave và Selenium để kiểm tra hệ thống, tích hợp và kết thúc để kết thúc. Tôi đang kiểm tra kết quả tính toán trên trang có quá 20 giá trị để xác thực. Sử dụng Junit Xác nhận toàn bộ phép thử sẽ thất bại trong trường hợp đầu tiên của một trong các giá trị không chính xác. Những gì tôi muốn làm là nếu một xác nhận thất bại được đáp ứng thì thử nghiệm tiếp tục thực hiện để tôi có thể đối chiếu tất cả các giá trị không chính xác trong một lần chạy thử thay vì chạy thử nhiều lần.
Để thực hiện việc này, tôi nắm bắt các xác nhận và ghi ra tệp nhật ký bất kỳ điều gì không thực hiện được xác thực. Điều này đã để lại cho tôi một vài vấn đề:
1) Tệp nhật ký nơi tôi viết các lỗi xác nhận không chứa tên Câu chuyện hoặc kịch bản JBehave đang được chạy khi ngoại lệ xảy ra.
2) Câu chuyện hoặc kịch bản JBehave được liệt kê là có 'Đã qua' và tôi muốn nó được liệt kê là 'Không thành công'.
Có cách nào để tôi có thể đăng nhập tên Story và Scenario ra tệp nhật ký bổ sung HOẶC nhận ghi nhật ký bổ sung được ghi vào tệp nhật ký JBehave không?
Tôi làm cách nào để có được Câu chuyện/Kịch bản được đánh dấu là không thành công?
Trong cấu hình JBehave tôi có:
configuredEmbedder()
.embedderControls()
.doIgnoreFailureInStories(true)
.doIgnoreFailureInView(false)
.doVerboseFailures(true)
.useStoryTimeoutInSecs(appSet.getMaxRunningTime());
và
.useStoryReporterBuilder(
new StoryReporterBuilder()
.withDefaultFormats()
.withViewResources(viewResources)
.withFormats(Format.HTML, Format.CONSOLE)
.withFailureTrace(true)
.withFailureTraceCompression(true)
.withRelativeDirectory("jbehave/" + appSet.getApplication())
Cảm ơn bạn. Điều đó thực sự hữu ích. –
Bạn có thể vui lòng thêm thông tin thêm về cách chúng tôi tạo nhật ký. Vui lòng giải thích: Nhật ký nhật ký riêng = ... – farheen
Điều đó phụ thuộc vào khung đăng nhập bạn đang sử dụng. Nếu bạn đang sử dụng slf4j: 'Logger log = LoggerFactory.getLogger (MyStoryReporter.class);'. Điểm chính là nó có thể là bất cứ thứ gì trong các phương thức gọi lại đó, bạn có thể thực hiện một sysout, ghi vào cơ sở dữ liệu hoặc bất cứ thứ gì khác – plasma147