我想知道如何使用outlook来测试邮件(邮件有一个链接,需要点击才能批准或拒绝请求)。我如何在 c# 的 Selenium Webdriver 中编写这个。我对硒很陌生。我想学习如何在 C# 中自动化测试。请与我分享你的知识。
与此线程有关的东西。 是否可以使用 selenium 进行邮件测试?
我想知道如何使用outlook来测试邮件(邮件有一个链接,需要点击才能批准或拒绝请求)。我如何在 c# 的 Selenium Webdriver 中编写这个。我对硒很陌生。我想学习如何在 C# 中自动化测试。请与我分享你的知识。
与此线程有关的东西。 是否可以使用 selenium 进行邮件测试?
你有几个选择。您可以像 Lyndon 在他的答案中链接到的那样自动化 Outlook,或者您可以改用网络电子邮件帐户并使用 Selenium 之类的工具来自动化它,或者可能最有效和最简单的方法是使用可以接收的 SMTP 库电子邮件并以编程方式解析响应并在浏览器中打开链接。
编辑:我的意思是 IMAP 库(接收电子邮件)。SMTP 用于发送邮件。以下是有关使用 IMAP 从 gmail 帐户访问电子邮件的一些文档:https ://developers.google.com/google-apps/gmail/xoauth2_libraries
当人们想到测试自动化时,往往会想到 Selenium 之类的东西。然而,像 Selenium、Webdriver、WATiR 这样的库只能在浏览器中提供帮助。
如果您想在 Outlook 中使用 C# 执行此操作,则不需要这些库。您可能希望使用 Microsoft.Office.Interop.Outlook。
前段时间我也遇到过类似的问题,这里有答案。这可能会让你有一个好的开始。
为什么不使用 c# 代码本身?
Outlook.Application oApp = new Outlook.Application();
Outlook.NameSpace olNameSpace = oApp.GetNamespace("mapi");
Outlook.MAPIFolder oInbox = olNameSpace.GetDefaultFolder(Outlook.OlDefaultFolders.olFolderInbox);
Outlook.Items oItems = oInbox.Items;
Console.WriteLine("Total : " + oItems.Count);
oItems = oItems.Restrict("[Unread] = true");
Console.WriteLine("Total Unread : " + oItems.Count); //Unread Items
Outlook.MailItem oMsg;
for (int i = 0; i < oItems.Count; i++)
{
oMsg = (Outlook.MailItem)oItems.GetFirst();
//oMsg.Display(true);
Console.WriteLine(oMsg.Links);
IE browser1 = new IE(oMsg.Links);
Console.WriteLine(oMsg.SenderName);
Console.WriteLine(oMsg.Subject);
}