c - 将硒与 C 一起使用
问题描述
我找不到有关是否可以将硒与 C 一起使用的任何信息。只是 C,而不是 C#。有谁知道这是否可能?
我尝试在 Google 上搜索,但出现的所有结果都包含“C#”而不是“C”。
解决方案
- 特定于核心语言的客户端驱动程序是:
- 红宝石
- JavaScript
- 爪哇
- Python
- C#
但是,根据Selenium 官方主页,确实存在其他语言的语言绑定,但 Selenium 项目不支持、维护、托管或认可这些项目,具体如下:
- 硒[语言:Go]
- hs-webdriver [语言:Haskell]
- wd [语言:JavaScript]
- Selenium 远程驱动程序[语言:Perl]
- php-webdriver [语言:PHP]
- RS硒[语言:R]
- webdriver.dart [语言:飞镖]
解决方案
您总是可以使用任何核心语言(例如 Java/Python/C#)编写基于 WebDriver 的测试,并从您的C / C++应用程序中调用脚本。
网络驱动程序++
Webdriver++是 Selenium Webdriver 的 C++ 客户端库,您必须安装它并具有以下功能支持:
- 可链接的命令
- 与 STL 容器兼容的类值对象
- 仅标头
- 轻量级依赖:
- 库库尔
- picojson
- 可与任何测试框架一起使用
- Linux、Mac 和 Windows
- clang (3.4)、GCC (4.6) 和 Visual Studio (2010)
一个例子:
#include <webdriverxx/webdriverxx.h>
using namespace webdriverxx;
int main() {
WebDriver firefox = Start(Firefox());
firefox
.Navigate("http://google.com")
.FindElement(ByCss("input[name=q]"))
.SendKeys("Hello, world!")
.Submit();
return 0;
}
@JimEvans 在他的评论中明确提到:
如果您真的不在乎您不是在“真正的”浏览器中运行,那么直接使用 QtWebKit 可能是一个不错的选择。意识到,尽管这不是一件小事。据我所知,WebDriver 没有任何 C++ 语言绑定,但只要你有 JSON 解析库(json-cpp 相当不错)和 HTTP 客户端库,你就可以编写自己的语言绑定很短的订单。
推荐阅读
- python - 如何操纵python脚本以一定百分比对CPU施加压力?
- c# - 从对象数组中提取值
- stata - 创建周的自定义定义
- ios - Swift TableView ImageView + Label = 致命错误:索引超出范围
- vue.js - 可编辑的 Tabulator 表格单元格中的自定义 Vue 组件
- android - 使用 AsyncTask 从 URL 获取数据到数组列表中
- flutter - ListWheelScrollView 不识别水龙头
- javascript - ajax成功后如何在输入框中放置链接?
- r - R Shiny - 在单独的表格中显示线性、多项式和三次回归汇总
- css - 字体真棒 scss unicode 显示矩形