(6)搜索特定微信通讯录联系人-微信UI自动化(.Net+C#)
微信 UI 自动化 (.Net + C) - 搜索特定微信通讯录联系人
在微信 UI 自动化中,找到指定联系人之前,我们需要进行一些工作来准备好环境和条件。在本文中,我们将详细描述如何使用微信程序的搜索功能来实现联系人的查找。
前提条件
* 微信程序已安装并运行* .Net Core3.1 或更高版本* C8.0 或更高版本准备工作
首先,我们需要确保微信程序正在运行,并且我们有一个有效的微信账号。接下来,我们需要在我们的 .Net Core项目中添加必要的 NuGet 包。
```csharpInstall-Package Microsoft.VisualStudio.TestTools.UnitTesting```
此包提供了 UI 自动化测试框架的基本功能。
搜索联系人
现在,我们可以开始编写代码来实现联系人的查找。我们将使用微信程序的搜索功能来找到指定联系人。
```csharpusing Microsoft.VisualStudio.TestTools.UnitTesting;
using OpenQA.Selenium;
using OpenQA.Selenium.Chrome;
namespace WeChatUITest{
[TestClass]
public class SearchContactTest {
private IWebDriver _driver;
[TestInitialize]
public void Initialize()
{
// 启动 Chrome 浏览器 _driver = new ChromeDriver();
_driver.Navigate().GoToUrl(" }
[TestMethod]
public void SearchContact()
{
// 等待微信程序加载完成 WebDriverWait wait = new WebDriverWait(_driver, TimeSpan.FromSeconds(10));
wait.Until(ExpectedConditions.ElementExists(By.Id("js_name")));
// 输入联系人名称 IWebElement searchInput = _driver.FindElement(By.Id("js_name"));
searchInput.SendKeys("指定联系人名称");
// 搜索联系人 IWebElement searchButton = _driver.FindElement(By.ClassName("js_search"));
searchButton.Click();
// 等待搜索结果加载完成 wait.Until(ExpectedConditions.ElementExists(By.CssSelector(".contact-list")));
// 获取搜索结果列表 IWebElement contactList = _driver.FindElement(By.CssSelector(".contact-list"));
// 验证联系人是否存在于搜索结果列表中 Assert.IsTrue(contactList.FindElements(By.CssSelector("li")).Any(li => li.Text.Contains("指定联系人名称")));
}
[TestCleanup]
public void Cleanup()
{
_driver.Quit();
}
}
}
```
在上面的代码中,我们使用了 `Microsoft.VisualStudio.TestTools.UnitTesting` NuGet 包提供的测试框架。我们首先启动 Chrome 浏览器,然后等待微信程序加载完成。接下来,我们输入联系人名称并点击搜索按钮。最后,我们等待搜索结果加载完成,并验证联系人是否存在于搜索结果列表中。
总结
在本文中,我们详细描述了如何使用微信程序的搜索功能来实现联系人的查找。在微信 UI 自动化中,这是找到指定联系人之前需要进行的工作。我们使用 .Net Core3.1 或更高版本和 C8.0 或更高版本编写了测试代码,并使用 `Microsoft.VisualStudio.TestTools.UnitTesting` NuGet 包提供的测试框架来实现测试。