我有一项有趣的任务,即为从未进行过单元或集成测试的现有 Web 应用程序构建复杂的工作流测试(所有测试均由开发人员/用户进行,没有结构或指南)。
设置
目标是一个已构建多年的 ASP.NET(无 MVC)Web 应用程序。没有干净的 MVC 或任何其他模式,因此 HTML 输出非常糟糕(生成的 ID、没有太多 css 类、行 css 样式 --> 难以测试)。该应用程序是以数据为中心的,因此需要进行很多测试,并且数据库的状态对于测试非常重要。
我正在考虑以下工作流程: 1. 重置数据库以测试开始数据 2. 运行通过模拟用户交互创建和测试数据的测试
工具
我在玩 Selenium IDE,但感觉不够结构化。我梦想有一个工具集,我可以在其中用(文学)coffeescript / javascript编写测试,可以在浏览器中执行(不需要无头测试),但我能找到的所有工具都旨在测试javascript函数而不是用户互动。
我的测试步骤需要是:
- 页面加载
- 通过搜索文本 A 或计算 ul B 中的元素来测试页面是否已正确加载
- 单击按钮 C,等待弹出窗口 D,在字段 E 中键入文本
- 单击保存按钮并检查字段 E 中的文本是否显示在元素 F 中
茉莉花能够测试这些用户交互吗?我只能找到针对 javascript 函数或 HTML 元素存在的 jasmine 测试,而不是针对具有相互依赖的测试步骤的复杂工作流程。
提前致谢!