【问题标题】:cakephp simpletest webtester delay/sleep functioncakephp simpletest webtester 延迟/睡眠功能
【发布时间】:2010-11-24 07:19:50
【问题描述】:

我正在使用 simpletest 来集成测试我的网站。我需要告诉内部浏览器等待一段时间(页面重定向时),然后执行 assertText。

有没有简单的方法可以做到这一点?

【问题讨论】:

    标签: cakephp simpletest


    【解决方案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 并编辑“function &_fetchWhileRedirected”。只需在 do..while 语句中添加一个 sleep() ,它就会减慢重定向速度。

    希望这会有所帮助。

    【讨论】:

    • 该页面有一个meta http-equiv=refresh,所以它不是真的http返回码是200。我怎样才能让SimpleTest/WebTester跟随这个刷新?
    • 既然您知道要查找元刷新,为什么不从“$this->get”或“$this->post”的结果中解析出那个字符串呢?一旦你有了新的 url,你可以放入 sleep() 然后运行另一个 $this->get($new_url);
    • 示例:1) $page = $this->get($url); 2) $url = $this->_parse_page($page); 3)睡眠(10); 4) $new_page = $this->get($url);我不确定,但这是你要找的东西吗? function _parse_page 基本上会做一个正则表达式或文本匹配来提取新的 url。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-03-03
    • 1970-01-01
    • 2012-04-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-09-03
    相关资源
    最近更新 更多