2

問題端到端測試:噶+ JQuery的VS量角器

在端對端測試方面,有什麼我們不能做KarmaJQuery這是可能與Protractor

說明

我目前正在爲我的JavaScript應用程序測試框架。 我使用Karma單元測試Protractor對於E2E測試如許多人所建議的。

我意識到單元測試和e2e測試之間的概念差異,但在JavaScript的上下文中,我不清楚爲什麼我們需要像Protractor這樣的框架。

據我所知,e2e測試的重點是使用該應用程序作爲最終用戶的簡單。爲此,量角器等工具使用webdriver與瀏覽器交互,讓我們模擬一些用戶事件(單擊元素,填充表單...)。

問題是,爲什麼我們不能簡單地通過使用KarmaJQuery來做到這一點?

事實上,JQuery帶有很多與DOM元素交互的方法(觸發事件,get/set元素的屬性,設置值到輸入...)。此外,它提供了選擇器,這使得DOM元素的選擇非常容易。

從我的角度來看,KarmaJQuery有(幾乎)都需要端對端測試(如果我們不照顧現有的瀏覽器窗口的操作都必須在Protractor這使例如設置窗口大小或位置) 。

我明顯錯過了一些東西,任何澄清都會有所幫助。

回答

1

按照您的方式使用Jquery和Karma是行爲驅動測試,但不是端到端測試。

使用Jquery和Karma,您無法像在量角器中那樣檢測到跨瀏覽器問題。另一方面,量角器運行你的測試,就好像它是最終用戶一樣。它從字面上打開你想要的瀏覽器並在該瀏覽器中測試你的應用程序。