2014-01-13 38 views
1

我希望有人可以幫助我,因爲我真的只是想要在這個桌子上工作:-(如何讓WebGuy-> fillField在Codeception驗收測試中工作?

我想讓fillFIeld工作,但我似乎無法讓它關節。

seeInField工作在同一表單字段,因此我認爲我的目標是等所有的好。

我甚至寫了一個令人難以置信的基本測試,以嘗試的統治一切。

的HTML .. 。

<!DOCTYPE html> 
<html> 
<body> 
    <form id="SearchForm" action="" method="get"> 
     <input type="text" name="search" value="abc" /> 
     <button type="submit">Search</button> 
    </form> 
</body> 
</html> 

測試...

//INSTANTIATE WEB GUY 
$I = new WebGuy($scenario); 

//DEFINE TEST 
$I->wantTo('search from home'); 

//GET ON THE HOME PAGE 
$I->amOnPage('/'); 
$I->seeInField('search', 'abc'); 
$I->fillField('search', 'def'); 
$I->seeInField('search', 'def'); 

輸出...

Acceptance Tests (1) --------------------------------------------------------------------------------------- 
Modules: PhpBrowser, WebHelper 
------------------------------------------------------------------------------------------------------------ 
Trying to search from home (Search_From_Home_Page_Cept.php)  
Scenario: 
* I am on page "/__staging/" 
* I see in field "search","abc" 
* I fill field "search","def" 
* I see in field "search","def" 
FAIL 

------------------------------------------------------------------------------------------------------------ 

Time: 25 ms, Memory: 12.25Mb 

There was 1 failure: 

--------- 
1) Failed to search from home in Search_From_Home_Page_Cept.php 
Sorry, I couldn't see in field "search","def": 
Failed asserting that two strings are equal. 
--- Expected 
+++ Actual 
@@ @@ 
-'def' 
+'abc' 

Scenario Steps: 
4. I see in field "search","def" 
3. I fill field "search","def" 
2. I see in field "search","abc" 
1. I am on page "/__staging/" 

FAILURES! 
Tests: 1, Assertions: 2, Failures: 1. 

我清楚地失去了一些東西很明顯,但在花了幾個小時拖網論壇,並沒有找到任何東西解決它我需要幫助!

回答

0

爲該字段分配一個Id。

<input type="text" id="search_input" name="search" value="abc" /> 


$I->seeInField('#search_input', 'abc'); 
$I->fillField('#search_input', 'def'); 
$I->seeInField('#search_input', 'def'); 

我希望這項工作。

+0

可惜不是...... '$ I-> amOnPage($ test_url); $ I-> seeInCurrentUrl($ test_url); $ I-> fillField('#search','def'); $ I-> seeInField( '#搜索', 'DEF');' 導致 '情景步驟: 9.我在字段 「#搜尋」 看到, 「DEF」 8.我填字段「 #搜尋」,‘高清’ 7.我看到當前URL‘/ __分期/’ 6.我頁上的‘/ __分期/’' – WalterEgo

+0

我希望你能做到換行符在這些意見 – WalterEgo

1

使用屬性選擇器選擇輸入元素通過它的name屬性:

$I->fillField('input[name=search]', 'def'); 
+0

沒有香蕉我害怕。我可能不得不做一個簡單的靜態html頁面來測試這個,所以我可以排除在我們的網站導致問題的東西。 – WalterEgo

相關問題