【发布时间】:2019-01-16 16:19:35
【问题描述】:
是否可以在 C# 中将 Selenium 测试集成到自己的程序中,用户只需执行该程序,然后在浏览器中执行操作而无需用户安装 Selenium?
我的目标是创建一个机器人,在用户之前在 WinForm/WPF 程序中配置的网站上执行某些操作。
【问题讨论】:
是否可以在 C# 中将 Selenium 测试集成到自己的程序中,用户只需执行该程序,然后在浏览器中执行操作而无需用户安装 Selenium?
我的目标是创建一个机器人,在用户之前在 WinForm/WPF 程序中配置的网站上执行某些操作。
【问题讨论】:
在我看来,这通常应该是可能的,但可能会很棘手。
对于 Microsoft Internet Explorer,需要一个驱动程序。如果您想使用 Chrome,则必须使用开源实现和驱动程序。
这些驱动程序只是可执行文件,可以使用 *.exe 进行部署
如果要使用 Firefox,用户需要安装与 Selenium 版本配合的版本。
您可以查找 Firefox 和 Co on the selenium page 支持的版本。
希望能帮到你……
【讨论】:
如果您在 Windows 窗体中配置了“stuff”和测试步骤,只需创建一个“RUN”按钮即可执行测试。好吧,在这一点上,无论您的测试做什么,都不应再是“测试”,而应该是一个函数,可以从表单中获取任何输入,并执行相应的步骤。
例如:
public void RunTest()
{
IWebDriver driver = new ChromeDriver(); //Or whatever driver you use.
/*
* Do all your "test" steps.
*
* Basically, in here put all code from SetupTest & Test Method & Teardown
* methods so the browser is initialized, all steps are done, and the browser
* is closed in the end.
*/
}
按下按钮时只需调用 RunTest()。当然,就像我说的,这不是一个测试,它只是一个打开浏览器的函数,并且(在 selenium 的帮助下)做任何你想做的事情。
【讨论】: