Tôi đang sử dụng Selenium RC với Java sử dụng TestNG làm Khung kiểm tra. Tôi đang sử dụng Eclipse như IDE. Tôi muốn gọi TestNG từ chương trình của riêng tôi rất dễ dàng. Làm thế nào tôi có thể làm điều đó?Làm thế nào để chạy các thử nghiệm Java Selen với TestNG theo lập trình?
Trả lời
TheStijn đưa ra một số hướng tốt, mặc dù TestMethodWorker() là nội bộ, do đó bạn không nên sử dụng nó.
Dựa trên câu hỏi, tôi thậm chí không chắc chắn các poster ban đầu đang cố gắng để khởi động TestNG trong một quá trình riêng biệt, vì vậy tài liệu API có thể là những gì bạn đang tìm kiếm:
http://testng.org/doc/documentation-main.html#running-testng-programmatically
Có một cái nhìn tại org.testng.remote.RemoteTestNG, điều này tuy nhiên sẽ yêu cầu bạn phải viết một bộ xml cho các xét nghiệm của bạn như:
<suite name="Default suite">
<test verbose="2" name="Default test">
<classes>
<class name="com...service.UserServiceImplTest"/>
</classes>
</test>
</suite>
Một điểm mấu chốt có thể org.testng.internal mới. TestMethodWorker (...). Run() nhưng bạn sẽ phải xem mã để xác định hàm tạo mà bạn cần thiết lập.
Có lẽ các điểm nhập khác, thuận tiện hơn có sẵn tùy theo nhu cầu của bạn; Tôi đề nghị để khởi động một số thử nghiệm trong chế độ gỡ lỗi, đặt một breakpoint trong thử nghiệm của bạn và đi xuống ngăn xếp.
Có, đây là nội dung của tệp xml. Vì vậy, tệp build.xml được chạy bằng cách sử dụng eclipse hoặc Ant –
mã sau đây của tôi trong java hoạt động độc đáo:
@Test
public void testTestNGProgramatically(){
TestListenerAdapter tla = new TestListenerAdapter();
TestNG testng = new TestNG();
testng.setTestClasses(new Class[] {LoginAuthentication.class, GmailSigninSignout.class});
testng.addListener(tla);
testng.run();
}
Bạn có thể nhận được các chi tiết giải thích bằng cách truy cập URL sau:
http://testng.org/doc/documentation-main.html#running-testng-programmatically
Trong mã trên của tôi: TestNG không được chấp nhận trong dòng "TestNG testng = new TestNG();" . Thay thế lớp TestNG là gì? –
Sử dụng 'org.testng.TestNG', không phải' com.beust.TestNG' (cái mà bạn có thể đang nhập). –
@CedricBeust: Cảm ơn rất nhiều. Có, tôi đã nhập org.testng.TestNG thay vì com.beust.TestNG và OK bây giờ –
- 1. Làm thế nào để tạo các thử nghiệm với các tên khác nhau trong TestNG?
- 2. Chạy thử nghiệm selen song song với Capybara
- 3. Chạy các thử nghiệm NUnit riêng lẻ theo lập trình
- 4. Intellij chạy một thử nghiệm trong TestNG
- 5. Chạy thử nghiệm đơn lẻ với TestNG trong Intellij IDEA
- 6. Làm thế nào để cấu hình các thử nghiệm selen với gradle?
- 7. Sử dụng trình điều khiển web selen để chạy thử nghiệm trên nhiều trình duyệt
- 8. Thử nghiệm lập trình
- 9. Ghi thử nghiệm Selen cho các trường hợp thử nghiệm Plone chức năng
- 10. Làm thế nào để chạy các cấu hình khởi chạy Eclipse theo lập trình?
- 11. Làm thế nào để chạy các thử nghiệm không phải Java trong maven-failsafe?
- 12. Thử nghiệm selen mà không cần trình duyệt
- 13. Thử nghiệm với trình điều khiển selen trong Java mà không cần mở bất kỳ trình duyệt nào
- 14. Làm thế nào để chạy "gói" trước khi thử nghiệm "
- 15. Truy xuất tên thử nghiệm trên TestNG
- 16. Hết thời gian thử nghiệm trong TestNG
- 17. Làm thế nào để bạn chạy thử nghiệm sao băng?
- 18. Làm thế nào để nhanh chóng thử nghiệm mã Java?
- 19. Làm thế nào tôi có thể cấu hình trình quản trị web selen để sử dụng thiết lập firefox tùy chỉnh cho các thử nghiệm?
- 20. Làm thế nào để chạy javascript trong lập trình java
- 21. Làm thế nào để gửi cookie với trình duyệt web selen?
- 22. Làm thế nào để bạn chạy thử nghiệm trong Sinatra?
- 23. cách chạy thử nghiệm Capybara độc lập?
- 24. Làm thế nào để thực hiện ipdb.set_trace() theo ý muốn trong khi chạy thử nghiệm pytest
- 25. Làm thế nào để biên dịch các thử nghiệm với SBT mà không cần chạy chúng
- 26. Làm thế nào để chạy tất cả các thử nghiệm với minitest?
- 27. Làm cách nào để cập nhật plugin thử nghiệm IntelliJ IDEA cho TestNG phiên bản 6.8?
- 28. Làm thế nào để tối ưu hóa các kiểm tra testng và seleniums
- 29. Làm thế nào để chạy thử nghiệm đơn vị với DSSS và GDC?
- 30. Java: Thử nghiệm với generics
Mã sau của tôi được làm việc độc đáo: TestListenerAdapter tla = new TestListenerAdapter(); TestNG testng = new TestNG(); testng.setTestClasses (lớp mới [] {LoginAuthentication.class}); testng.addListener (tla); testng.run(); com.beust.testng.TestNG; TestNG không được chấp nhận. Có cách nào khác không? –
Sử dụng org.testng.TestNG thay vì com.beust.TestNG –
bạn có thể theo dõi blog này http://dharshanaw.blogspot.com/2012/10/how-to-execute-testng-tests.html – Dharshana