我应该为哪些典型的 javascript、HTML 和 AJAX 问题编写测试用例?

软件测试 测试设计 javascript
2022-01-26 21:06:37

HTML 渲染、Javascript 和 AJAX 在现代 Web 应用程序的开发中发挥着重要作用。

在为使用它的网站设计测试用例时,JavaScript 有多重要?使用 AJAX 的网站可能会出现哪些问题?我应该为哪些典型问题编写测试用例?

2个回答

从我的角度来看,最大的一个可能是数据验证:大多数现代 Web 应用程序都从某种数据源中提取数据并呈现它,然后根据用户交互来交互和修改数据。

JavaScript,尤其是 JavaScript/AJAX,可以使查找 Web 控件变得“有趣”,因为页面本身可以根据接收到的数据重新绘制。

要寻找的一些问题是不同浏览器中的行为,包括不同版本的 IE,禁用 JavaScript 时的优雅回退(对于基于消费者的应用程序尤其重要 - 至少应该有一个突出的警告,即应用程序必须启用 JavaScript,如果站点检测到没有可用的 JavaScript(我个人不喜欢这个,并且只有在我绝对必须拥有它时才启用脚本)),当站点正在处理数据时某种清晰而明显的指示符(完成警告用户不要使用刷新按钮 - 如果您正在处理一个接受付款的网站,这一点尤其重要)。

正如我最初所说,对于处理数据并将其存储在数据库中的站点,您应该始终从已知数据状态开始(通过将已知数据库的备份恢复到 Web 应用程序数据库中)并验证测试完成时的数据是您所期望的。您可以在每个事务的基础上执行此操作(这提供了更细粒度的流程,并且在运行早期不会受到事务失败的影响,但实现起来要复杂得多)或在测试运行结束时执行此操作作为单个基线比较(如果早期测试未能完成,由于交易数量不同,您将得到很多比较错误)。

如果您不能从已知的数据状态开始,您可以做的最好的事情是检查每个事务,以确保您通过测试输入的数据正确保存到数据库中。无论哪种方式,您都需要了解数据库的结构以及它与屏幕上的数据的关系(可能完全不同)。

要测试的问题:

  • 网络断了
  • 网络很慢
  • 在不同的浏览器中测试 Ajax
  • 网络已启动但服务器已关闭
  • 微调器消失(如果网络关闭)
  • 网络关闭时,屏幕被导航离开
  • 连续尝试两次更改,看看它们是否正确排队
  • 尝试在网络关闭时更改,在网络运行时再次更改
  • 越来越长的项目符号看起来很悦目