javascript - 使用 Selenium IDE 调用 JavaScript 文件中的函数

标签 javascript asp.net-mvc-3 selenium

因此,我正在针对我正在处理的网站运行这些 Selenium IDE 测试。关于测试本身的一切都运行良好,除了我想在完成后做一些清理工作。在我基于 MVC3 Razor 的站点中,我有一个 JavaScript 文件,其中包含一个从我的 Controller 获取 JsonResult 的函数。该 Controller 处理 Selenium IDE 否则无法处理的数据库清理。

但是,我很难找到有关如何执行此操作的任何类型的文档。我知道我可以将 JavaScript{ myJavascriptGoesHere } 作为测试中一行的值之一,但我似乎无法找到一种方法来告诉它去寻找我的清理功能。

Selenium IDE 甚至有可能做这种事情吗?

如果归根结底,我可以创建一个单独的 View 来处理清理工作,但我真的希望尽可能避免这种情况。

谢谢!

最佳答案

如果您想从 Selenium IDE 执行您自己的存在于测试页面中的 JavaScript 函数,您需要确保通过窗口对象访问它。例如,如果您查看 storeEval 的引用,它说:

Note that, by default, the snippet will run in the context of the "selenium" object itself, so this will refer to the Selenium object. Use window to refer to the window of your application, e.g. window.document.getElementById('foo')

所以如果你有自己的功能,例如我的函数()。您需要将其称为 window.myFunc()

这对于在不实际提交表单的情况下进行客户端验证非常方便,例如如果您想测试各种无效和有效的表单字段值。

如果您使用 runScript,它应该已经在窗口的上下文中运行。

关于javascript - 使用 Selenium IDE 调用 JavaScript 文件中的函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8794528/

相关文章:

jquery - 下载 jQuery 脚本来本地化日期选择器

python - Pandas 抓取的数据在 Pandas 中不起作用

javascript - 当我创建点时将它们动画化

javascript - 有人可以解释 SUM 函数任务吗?

c# - 通过 Web API 使用 Entity Framework 进行分页

asp.net-mvc - 如何在 ASP.NET MVC 3 razor ViewStart 文件中指定不同的布局?

java - 从右键单击菜单中,它没有单击特定选项 Selenium

python - selenium-webdriver:如何使用 for 循环查找元素

javascript - FullCalendar Jquery,选择当天内

javascript - 如何获取select中选中的值?