长话短说,我有一个Web应用程序,我有一个触发2个异步ajax调用的按钮。 2个ajax调用使用的参数实际上是应用程序中设置的javascript变量。完成两个ajax调用后,将使用其中一个初始ajax调用执行第三个ajax调用。第三个ajax调用完成后,会在内容中添加一个新的div。
到目前为止,我将CodeCeption与WebDriver一起使用,通过两个简单的操作可以轻松模拟上述功能:
$I->click(button)
$I->waitForElementVisible(newdiv)
我现在正在尝试使用PhpBrowser模拟相同但我不确定如何处理这个问题:
1。由于PhpBrowser不使用javascript,如何在2个ajax调用中发送javascript参数?
2. 由于PhpBrowser中没有可用的waitforelement功能,我是否需要手动触发所有3个ajax调用?或者PhpBrowser能够手动执行两个ajax调用的回调并自动触发第三个调用吗?
答案 0 :(得分:3)
PhpBrowser不会执行任何javascript。
您必须在测试的PHP代码中硬编码或计算“javascript变量”的值。
并使用sendAjaxRequest方法:http://codeception.com/docs/modules/PhpBrowser#sendAjaxGetRequest