我经常在遗留企业架构要求员工经常向不同系统打开多个浏览器窗口的地方工作,以便手动移动数据或检查未连接系统中的字段。我突然想到,也许可以使用自动化的 e2e 测试框架来完成相同的任务。有没有人听说过有人以这种方式接近自动数据输入?
问问题
284 次
1 回答
1
您正在寻找的不是 e2e 框架,而是以编程方式控制浏览器的 Web 驱动程序(e2e 框架通常构建在此类驱动程序之上)。Selenium 可以完成这项工作,并且可以控制自 IE 6 以来的主要浏览器,并且具有适用于所有主要语言的库。
我做到了,取得了巨大的成功。这是一种快速且通用的批量传输数据的方法(我想不出什么会阻止您这样做,因为您实际上正在使用 UI),但是很脏并且不能无人看管(您仍然必须监督这个过程,因为驱动程序不会注意显示的错误,除非你教它)。
但是,在您这样做之前,您不能通过最直接的 HTTP 请求与相关系统进行交互吗?您可以使用 Telerik Fiddler 之类的工具来拦截呼叫并对其进行分析(或在过去 3-5 年的任何浏览器中处理您的页面,它们都提供带有网络流量检查的调试工具)。这会更快,尽管需要更多的分析。
我能想到的唯一不能使用直接 HTTP 请求的情况是,如果您正在处理 ASP.NET WebForms - 因为您必须向 ViewState 提供请求,这不是人类可读的并且通常在顶部进行加密。如果是这样的话 - 肯定选择 Selenium。
于 2015-06-30T17:38:00.660 回答