Selenium自动化测试高手必备:基于WebDriver的Web UI自动化
上一篇 / 下一篇 2021-12-22 17:13:31 / 个人分类:自动化测试
Selenium是当前最流行的Web UI自动化测试框架,熟悉Selenium的人也知道,Selenium是基于WebDriver。那么能不能不用Selenium,直接调用WebDriver来实现Web UI自动化呢?答案当然是可以的,本文就带你来实现基于WebDriver的Web U自动化。本文通过调用Selenium、Curl命令、直接调用ChromeDriver三种方式,实现了同样的功能。编程语言为C#,已在Visual Studio 2019测试通过,其他主流编程语言也可以完成同样功能。对比三种实现方式,大家就可以容易的理解如何不用Selenium而直接调用WebDriver完成Web U自动化。阅读以下内容前,需要有Selenium和WebDriver相关基础知识。
手动步骤
1.打开Chrome浏览器
2.进入https://www.baidu.com/主页
3.搜索框输入“Selenium”
4.点击“百度一下”
5.关闭Chrome浏览器
调用Selenium的C#代码
using OpenQA.Selenium;
using OpenQA.Selenium.Chrome;
namespace HelloSelenium
{
class Program
{
static void Main(string[] args)
{
IWebDriver driver = null;
try
{
//1. 打开Chrome浏览器
driver = new ChromeDriver();
//2. 进入https://www.baidu.com/主页
driver.Navigate().GoToUrl("https://www.baidu.com/");
//3. 搜索框输入“Selenium”
driver.FindElement(By.Id("kw")).SendKeys("Selenium");
//4. 点击“百度一下”
driver.FindElement(By.Id("su")).Click();
}
finally
{
//5. 关闭Chrome浏览器
if (driver != null)
{
driver.Dispose();
}
}
}
}
}
Curl命令
1.打开Chrome浏览器
启动命令提示符,执行chromedriver.exe --port=9515 (注意选用与Chrome版本对应的chromedriver版本,端口只要未被占用即可)。
另起一个命令提示符,执行curl命令(注意端口号),记住返回的sessionId。
curl -d @JsonFile1.json http://localhost:9515/session
JsonFile1.json内容:
{
"desiredCapabilities": {
"caps": {
"nativeEvents": false,
"browserName": "chrome",
"version": "",
"platform": "ANY"
}
}
}
2.进入https://www.baidu.com/主页
curl -d @JsonFile2.json http://localhost:9515/session/36d903cbd2177c278b5d39bbe74a3318/url
JsonFile2.json内容:
{"url":"https://www.baidu.com/"}
3.搜索框输入“Selenium”
获取elementId:
curl -d @JsonFile3.json http://localhost:9515/session/36d903cbd2177c278b5d39bbe74a3318/element
JsonFile3.json内容:{"using":"css selector","value":"#kw"}
输入“Selenium”:
curl -d @JsonFile4.json http://localhost:9515/session/36d903cbd2177c278b5d39bbe74a3318/element/0.7861531328870939-1/value
JsonFile4.json内容:{"value":["Selenium"]}
4.点击“百度一下”
获取elementId:
curl -d @JsonFile5.json http://localhost:9515/session/36d903cbd2177c278b5d39bbe74a3318/element
JsonFile5.json内容:
{"using":"css selector","value":"#su"}
点击:
curl -d @JsonFile4.json curl -d @JsonFile6.json http://localhost:9515/session/36d903cbd2177c278b5d39bbe74a3318/element/0.7861531328870939-2/click
JsonFile6.json内容:
{}
5.关闭Chrome浏览器
关闭Chrome:
关闭Chrome
curl -X DELETE http://localhost:9515/session/36d903cbd2177c278b5d39bbe74a3318
关闭chromedriver.exe:
curl http://localhost:9515/shutdown
调用ChromeDriver的C#代码
相关阅读:
- 软件测试职业发展规划,带你摆脱年龄的困扰! (liqianqian1116, 2021-12-21)
- python实现推箱子游戏 (liqianqian1116, 2021-12-24)
- 贪吃蛇python源码 (liqianqian1116, 2021-12-30)
- 基于python的高德地图实时路况信息爬取分析 (liqianqian1116, 2022-1-04)
- 哪类人群适合去从事软件测试工作? (liqianqian1116, 2021-12-23)
- 软件测试的五大职业发展路线 (liqianqian1116, 2021-12-27)
- 小白入门软件测试必须牢记的几大知识点 (liqianqian1116, 2021-12-23)
- 15个Python入门小程序,你都知道哪些 (liqianqian1116, 2021-12-23)
- 如何做一名专业的软件测试工程师 (大椿菜, 2021-12-23)
- 测试Leader应该做哪些事? (大椿菜, 2022-8-22)
清空Cookie - 联系我们 - 51Testing软件测试网 - 交流论坛 - 空间列表 - 站点存档 - 升级自己的空间
Powered by 51Testing
© 2003-2021
沪ICP备05003035号