首页 > 编程语言 >用Visual Studio编写自动化测试百度网站的程序

用Visual Studio编写自动化测试百度网站的程序

时间:2024-04-14 11:22:43浏览次数:20  
标签:Console Title Chrome driver Visual Studio WriteLine 百度

摘要

使用Visual Studio 2022,基于Selenium.WebDriver创建项目,模拟用户登入网站,进一步下单和修改收货地址。

Visual Studio新建解决方案

img

img

img

img

引入Selenium.WebDriver

img

img

img

img

编写自动访问百度搜索的代码

因为搜索网站只有一个输入条件嘛。

第一版代码

  • 网址改为百度
  • 百度的输入框input的name是“wd”
// See https://aka.ms/new-console-template for more information

using OpenQA.Selenium.Chrome;
using OpenQA.Selenium;

var driver = new ChromeDriver();

// Google无法访问,所以官网代码修改为baidu
driver.Url = "https://www.baidu.com";

Console.WriteLine(driver.Title);
// 在浏览器中看到百度输入框的input的name是“wd”
driver.FindElement(By.Name("wd")).SendKeys("webdriver" + Keys.Return);



Console.WriteLine(driver.Title);

driver.Quit();

Console.WriteLine("Hello, World!");

在Visual Studio 2022中启动调试

控制台窗口启动以后,自动启动了Chrome浏览器的一个新进程,这个Chrome打开百度页面大约3秒后,Chrome进程自动退出了。

控制台完整截图如下:

img

第二版代码

上述效果没有达到我们的预期,因为浏览器标题栏应该有变化,带上我们的关键字才正确。

// See https://aka.ms/new-console-template for more information

using OpenQA.Selenium.Chrome;
using OpenQA.Selenium;

var driver = new ChromeDriver();

driver.Url = "https://www.baidu.com";

//先输出百度的标题
Console.WriteLine(driver.Title);

driver.FindElement(By.Name("wd")).SendKeys("webdriver" + Keys.Return);

//停留3秒,确保浏览器加载完页面
Thread.Sleep(3000);

//再次输出百度的标题
Console.WriteLine(driver.Title);

driver.Quit();

Console.WriteLine("Hello, World!");

启动调试

控制台自动启动一个Chrome,打开了百度的首页:

img

自动在搜索框输入了关键字:

img

img

第三版代码

百度网页的标题栏里,带有我们的搜索关键字,就说明百度的搜索功能运转正常。

// See https://aka.ms/new-console-template for more information

using OpenQA.Selenium.Chrome;
using OpenQA.Selenium;

var driver = new ChromeDriver();

driver.Url = "https://www.baidu.com";

//先输出百度的标题
Console.WriteLine(driver.Title);

string keyWord = "webdriver";

driver.FindElement(By.Name("wd")).SendKeys(keyWord + Keys.Return);

//停留3秒,确保浏览器加载完页面
Thread.Sleep(3000);

string baiduTitle = driver.Title;

//再次输出百度的标题
Console.WriteLine(baiduTitle);

driver.Quit();

//因为driver在Quit以后,就不能再读取Title属性了。
//所以前边要把Title保存在临时变量里。
bool isBaiduWorkingWell = baiduTitle.Contains(keyWord);

if (isBaiduWorkingWell)
{
    Console.WriteLine("百度的搜索功能正常工作中……");
}
else
{
    //以后这里可以发出钉钉、邮件和短信。
    Console.WriteLine("百度崩了,百度崩了……");
}

执行后的效果

Chrome被自动启动,输入关键字后退出了。

控制台完整截图如下:

img

下一篇就是登入我们自己的电商网站,来登入和下订单了。

标签:Console,Title,Chrome,driver,Visual,Studio,WriteLine,百度
From: https://www.cnblogs.com/amisoft/p/18133823/auto-monitor-baidu

相关文章

  • “百度杯”CTF比赛 2017 二月场-爆破-3
    “百度杯”CTF比赛2017二月场爆破-3题目类型:web题目描述:打开靶机,得到一段php代码,说明这是一道php代码审计类型的题:<?phperror_reporting(0);session_start();require('./flag.php');if(!isset($_SESSION['nums'])){$_SESSION['nums']=0;$_SESSION['time�......
  • Visual Studio Code & Python教程3顶级扩展
    3简介扩展功能非常宝贵。它们有助于提高代码质量,加快开发工作。我们将介绍一些必备的通用扩展。3.1顶级扩展3.1.1Pylance微软的Pylance可以大大提高你的工作效率。Pylance是一款Python语言服务器,它增强了IntelliSense、语法高亮和大量其他功能,为Python开发人员带来了令人......
  • 百度APP原型设计
    一、实验题目:原型设计二、实验目的:掌握产品原型设计方法和相应工具使用。三、实验要求(1)对比分析墨刀、Axure、Mockplus等原型设计工具的各自的适用领域及优缺点(至少3条)。1.墨刀:适用领域:墨刀适用于快速创建简单的交互原型,尤其适合设计师、产品经理和开发人员等各个领域的用户......
  • Python程序员Visual Studio Code指南5调试
    5调试当运行程序时终端输出错误时,可以参考编辑器中的"问题"面板来解决遇到的问题。不过,并非所有错误都会导致错误。可能出现的情况是,程序执行成功,但输出结果与预期不同。出现这种情况时,下一步就是找出程序中的错误。这个过程被称为调试。您可以尝试通过注释代码行(从而禁止代码......
  • node笔记1:vue+node+mongodb+studio 3T创建登录模块
    1.创建node项目:expressnodenpmipackage.json修改如下代码,便于每次修改代码都可以刷新页面:"scripts":{"start":"node-dev./bin/www"}2.如果配合node设置反向代理;3.添加mongoose模块提供数据库信息:npmimongoose--save4.以登录功能模块为例,项目文件如下:model......
  • Visual Components对重型机械工业的影响 衡祖仿真
    一、重型机械行业面临的挑战此行业制造商面临着许多挑战,首先是世界各地实施的环境法规不断增多,可持续建筑实践、改善空气质量和减少排放已成为产品设计和开发背后的主要驱动力,健康和安全标准也在不断发展,给已经面临熟练劳动力短缺问题的制造商带来了新的负担。二、为什么使用Vi......
  • VS studio上查看标准cout输出
    VSstudio上查看标准cout输出网上的方法在解决方案管理器中,单击选中项目后,点击菜单【视图】->【属性页】在生成事件->生成后事件->命令行(BuildEvents->Post-BuildEvent->Command)Line)中增加$(OutDir)$(ProjectName).exe顾名思义,这个方法是在生成结束后,使用命令行执行生成的......
  • VS studio 上开发Qt——Qt VS studio Tool的使用
    1.VS上安装Qt扩展点击菜单栏【扩展】->【管理扩展】,在搜索框搜索“Qt”,点击下载QtVisualStudioTools,以2022版为例,需要关闭所有窗口才能执行安装关闭VS后,弹出安装窗口,等待其安装完成2.新建QT工程测试等待安装完成后,添加一个QtVertion后(前提已经安装了Qt开发环境)即可......
  • visual studio vim vsvim配置
    vsvim的配置setai"自动缩进宽度setsw=4setts=4"关闭高亮显示setnohlsearchsetissetignorecasesetbackspace=indent,eol,startsetclipboard=unnamedsetnumber"设置leaderkey为空格""letmapleader="""jk用于退出j:inor......
  • Visual Studio Code & Python教程2环境
    2简介本章将使用简单的编程概念来修改基本的Python程序和VSCode功能,如任务运行、编辑默认设置、了解键盘快捷键和运行Python程序。我们必须做的第一件事是建立一个工作的开发环境。我们将从安装Python和安装VS代码开始,然后设置Python环境。本章的第二部分是了解全局......