2009-08-31 67 views

回答

1

沒有「簡單」的方法來減緩CakeTest環境中的重定向。

爲此,您需要進入SimpleTest庫並在其中進行修改。

這是一個有關類的想法:

cake_web_test_case - > web_test_case(web_tester.php) - > simple_browser(browser.php) - > simple_user_agent(user_agent.php)

如果你想減慢重定向,我會建議打開/vendors/simpletest/user_agent.php並編輯「功能& _fetchWhileRedirected」。只需在do..while語句中添加sleep(),它會減慢重定向。

希望這會有所幫助。

+0

頁面有一個meta http-equiv = refresh,所以它不是真正的http返回碼是200.我怎樣才能使SimpleTest/WebTester遵循此刷新? – 2009-09-02 03:03:05

+1

既然你知道尋找元刷新,爲什麼不從「$ this-> get」或「$ this-> post」的結果解析出該字符串呢?一旦你有了新的url,你可以放入sleep()然後運行另一個$ this-> get($ new_url); – Dooltaz 2009-09-02 17:29:43

+0

例如: 1)$ page = $ this-> get($ url); 2)$ url = $ this - > _ parse_page($ page); 3)睡眠(10); 4)$ new_page = $ this-> get($ url); 我不確定,但這是你要找的東西嗎?函數_parse_page基本上會做一個正則表達式或文本匹配來提取新的url。 – Dooltaz 2009-09-02 17:39:02