Codeception phpbrowser 使用 javascript
Codeception phpbrowser using javascript
长话短说,我有一个 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 调用的回调并自动触发第三次调用?
PhpBrowser 不执行任何 javascript.
您必须在测试的 PHP 代码中硬编码或计算 "javascript variable" 的值。
并使用 sendAjaxRequest 方法:http://codeception.com/docs/modules/PhpBrowser#sendAjaxGetRequest
长话短说,我有一个 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 调用的回调并自动触发第三次调用?
PhpBrowser 不执行任何 javascript.
您必须在测试的 PHP 代码中硬编码或计算 "javascript variable" 的值。
并使用 sendAjaxRequest 方法:http://codeception.com/docs/modules/PhpBrowser#sendAjaxGetRequest