当我使用 PHPUnit 隔离和测试应用程序代码时,我们的 QA 团队一直在使用 Selenium 测试 UI。我听说测试需要 10 多个小时才能完成,我认为这太长了。然后我的问题真正涉及在处理页面时如何等待 AJAX 调用。
例如,我们有一个包含大量输入的页面,它将调用 AJAX 调用来与我们的服务对话以显示数据。我们有多个输入,然后在更改后过滤后续选择框。
分区都已加载,分区(属于分区)然后存储(属于分区)也是如此
Division 1
+- District 10
+- Store 100
+- Store 101
+- Store 102
+- District 11
+- Store 200
+- Store 201
+- Store 202
Division 2
+- District 20
+- Store 300
+- Store 301
+- Store 302
+- District 21
+- Store 150
+- Store 151
+- Store 2002
...
现在选择框都初始加载了,所以最终用户可以选择其中的任何一个。但是,一旦选择框进行了选择,AJAX 调用就会根据父项的选择重新加载其他选择框。IE:选择 Division 2,然后仅筛选 District 20 和 21 的 District 列表(使用对服务的调用),并且商店列表也筛选为仅针对这些地区的商店。
如果您跳过选择部门,而是选择一个地区,那么商店列表将被重新过滤为该地区的商店,再次使用我们在后端的服务。
我的问题是如何知道 AJAX 调用何时从我们的服务返回,并且选择框已更改?我们的 QA 团队正在等待,然后循环选择框以检查所有返回的值是否正确。有没有办法让他们知道选择框何时完成重新加载,以便他们可以检查内容?
显然,我想将这些检查中的大部分移动到带有 Mock 对象的 PHPUnit 测试中,以验证我们的服务是否正常工作,但我们的 QA 团队仍然希望验证实际呈现的结果是否匹配。
任何建议,将不胜感激。