下一步是檢查Cucumber如何測試運(yùn)行Selenium測試代碼。
Cucumber測試的步驟基本上就是調(diào)用后綴為View的類,類中包含了Selenium實(shí)現(xiàn)的細(xì)節(jié)。這在技術(shù)上不是必需的,但是可以讓測試步驟的類更加易讀,因?yàn)镾elenium框架相關(guān)的內(nèi)容都在一個(gè)單獨(dú)的類中。
Selenium框架負(fù)責(zé)測試代碼和瀏覽器的交互。視圖類是我們要自動(dòng)化的web頁面的抽象。視圖代碼中有HTML控制器對應(yīng)的成員變量。你可以用Selenium框架的注解描述測試代碼的成員變量和HTML元素之間的綁定關(guān)系,如下所示:
@FindBy (id = "name " ) private WebElement nameInput;
@FindBy (id = " surname" ) private WebElement surnameInput;
測試代碼之后會(huì)使用成員變量去自動(dòng)化與測試人員根據(jù)測試計(jì)劃做出的相同步驟。將劃分為視圖和步驟類也讓步驟類和測試計(jì)劃的相似性更加明顯。當(dāng)人們用代碼參與到測試和質(zhì)量保證的工作時(shí),這樣劃分的考慮是有用處的。
要發(fā)送一個(gè)字符串,需要使用方法去模擬用戶在鍵盤上輸入:
nameInput . clear ( ) ;
nameInput.sendKeys (value) ;
還有一些有用的方法,比如click(),可以控制用戶單擊行為。