2013-10-11 56 views
4

我已經開始學習通過YouTube視頻和在線教程硒..什麼是TestNG的和JUnit框架,硒

我現在有知識的創建類,接口,對象,繼承,數組,循環在Java中。

就Selenium而言,通過使用Firebug/Firepath工具識別每個元素,我可以使用Java語言直接在Selenium中自動化。

但我不斷聽到TestNG的和JUnit框架 ...

  1. 這些是什麼?
  2. 它們與硒有什麼關係?
  3. 難道我的 目前擁有的知識數量很難提取它們嗎?

回答

1

JUnit是Java使用的基本測試框架。它與硒相關,因爲如果你正在做任何測試並且你想用Java編寫測試,你可以使用JUnit來編寫測試,然後鉤入Selenium。你的第三個問題的答案很難回答。 JUnit是基於Java的,所以如果你知道Java,你會沒事的。假設你對編程有基本的瞭解,你應該沒問題。

TestNG與JUnit類似,但它不是Java的「事實上」測試框架。

這裏有一些鏈接,可以幫助:

http://testng.org/doc/index.html

http://junit.org/

+0

好吧...... 說,我要打開瀏覽器>轉到Gmail.com>進入UNAME和密碼>點擊登錄,然後signout 將我的代碼看起來不同,如果我不使用任何框架(如我目前)/如果我使用Junit /如果我使用testNG –

+0

是的,與Selenium相比,您的代碼看起來不同。這也取決於你如何使用Selenium。上次我檢查(這是前一段時間),如果您使用的是網絡驅動程序,則必須使用JUnit。 – BlackHatSamurai

5
  1. 他們的工具來幫助您組織的測試。您可以在測試之前/之後定義您想要運行的內容,您可以對測試進行分組,並且可以更輕鬆地進行報告。

  2. 它通常與Selenium一起提到,因爲Selenium是一種常見的測試工具。這兩者很好地協作,但它們完全分開。 (Selenium將您連接到您的瀏覽器,TestNG/JUnit組織測試)

  3. 是的。你應該能夠把它們拿起來。它們的設計相當容易學習。

+1

哦,我認爲我得到你想要做的點... 因此對於相同的功能,如果我使用junit/TestNG /我不使用任何框架工作,我將編寫相同的代碼.. 但是當我運行一個測試套件時,其中的每一個都會以不同的方式處理事情...... 我在這裏嗎? –

+1

如果您有一個測試功能,該功能將完全相同。但是,它發生在TestNG/JUnit可以提供幫助的功能之前/之後會發生什麼。如果您有20個測試,其中3個測試失敗,它會在第一個測試失敗時繼續測試所有測試,並會告訴您哪些測試失敗。基本上如果你想組織你的測試,你可以使用一個框架。 –

+0

但是,它不會改變硒的工作方式。 –

4

JUnit附帶了大部分IDE,如Eclipse和NetBeans。有許多使用JUnit開發的測試框架。

TestNG是一個開源框架。它支持參數化,數據驅動測試,並行執行。 JUnit對這些並不太靈活。

我更喜歡TestNG而不是JUnit。我使用TestNG for Selenium開發了開源測試框架。你可能想看看它。

https://github.com/selenium-webdriver-software-testing/kspl-selenium-helper

1

可以很好地創建一個量的硒和Java知識,你有自動化的腳本。但是現在,如果您的經理要求您運行所有的測試腳本並向他發佈通過失敗報告。非常原始的做法是,在Excel中添加您的測試腳本的名稱,通過在Eclipse IDE或等效軟件中逐一運行並在Excel中更新結果來獲取其結果。

要避免這種情況,可以使用testNG或junit。 TestNG和junit是測試框架。自動化的一部分是開發自動化腳本,另一部分正在運行它。 Junit & TestNG有助於運行自動腳本。其中包括準備測試數據,管理測試數據,運行測試,發佈/存儲執行報告,清除/刪除測試數據。

您可以輕鬆獲取TestNG或junit知識以獲取快樂路徑場景。需要付出額外的努力來處理複雜的情況。

您還會遇到像Jenkins或CI(持續集成)這樣的術語。保持熱情。其精彩的自動化框架世界。