当前位置: 首页 > 知识库问答 >
问题:

将Selenium工具与C一起使用#自动单击从gmail帐户收到的电子邮件中的链接

诸葛令
2023-03-14

我正在使用Selenium工具进行自动化,我的自动化脚本由于这个gmail问题而失败。

不确定,在我的自动化脚本在登录页面(https://google.com)上发送我的电子邮件后,通常它应该转到

请输入密码页,但不要输入gmail导航到该页的原因

https://accounts.google.com/signin/v2/usernamerecovery?service=mail

它要求我通过输入恢复电子邮件来“查找您的电子邮件”。

查找您的电子邮件页面

即使我输入了所有正确的详细信息,它仍然会显示“找不到电子邮件”。每次我运行脚本时,都会面临同样的问题。

我尝试过使用不同的电子邮件ID,无论何时我从我的自动化脚本运行它,我都被重定向到“查找您的电子邮件”页面

如果我刷新并手动输入我的电子邮件地址,它会识别我的电子邮件Id并导航到密码页面,工作正常

谁能帮我解决这个问题,因为我的网站完全依赖于我通过电子邮件打开的链接。

我在Windows上使用Google Chrome作为我的web浏览器。

请参阅随附的“查找您的电子邮件”页面截图

代码:

GMAIL页面

[FindsBy(How=How.Id,Using=“identifierId”)]公共IWebElement Gmail用户名{get;set;}

[FindsBy(How=How.Name,Using=“password”)]公共IWebElement Gmail密码{get;set;}

[FindsBy(How=How.ClassName,Using=“CwaK9”)]公共IWebElement gmailNext{get;set;}

公共无效LaunchGmail()

    {
        webDriver.Manage().Cookies.DeleteAllCookies();

        webDriver.Navigate().GoToUrl("https://gmail.com");

    }

    public void GmailLogin(int iteration)

    {

        if (iteration < 1)

        {

            gmailUserName.SendKeys(ConfigurationManager.AppSettings["GmailUserName"] + "@gmail.com");

            gmailNext.Click();

        }

        Thread.Sleep(2000);

        gmailPassWord.SendKeys(ConfigurationManager.AppSettings["GmailPassWord"]);

        gmailNext.Click();

    }

测试设置页面

[有约束力]

public class TestSetup

{

    public static IWebDriver WebDriver;

    Actions myAction;

    public static int TestCaseNumber = 0;

    public GmailPage _gmailPage = new GmailPage(WebDriver);

[BeforeScenario]

    public void BeforeScenario()

    {
        currentTest = Test.CreateNode("TestName : " + ScenarioContext.Current.ScenarioInfo.Title);

        String ScenarioName = ScenarioContext.Current.ScenarioInfo.Title;

        WebDriver.Manage().Window.Maximize();

        if (ScenarioName.Equals("Scenario Name"))
        {
            _gmailPage.launchGmail();

            _gmailPage.GmailLogin(TestCaseNumber);

            _gmailPage.DeleteRegistrationEmail();

            _gmailPage.gmailLogout();

        }

    }

在我启动gmail时使用迭代删除电子邮件并启动我的应用程序注册为用户并在用户注册我的应用程序后重新启动gmail用户必须通过单击发送到电子邮件的链接来完成注册以设置密码

谢谢,

自动化选项Z

共有1个答案

叶浩荡
2023-03-14

类别CwaK9被分配给2个不同的控件(忘记密码

 类似资料:
  • 我成功通过passportjs验证,但NodeEmailer只发送一封电子邮件,这是控制台中使用的一封电子邮件。云谷歌。 当我尝试其他gmail帐户时,我得到这个错误: 错误:无效登录:535-5.7.8不接受用户名和密码。在535 5.7.8了解更多信息https://support.google.com/mail/?p=BadCredentialsu6sm13346885wrp。0-SMTPC

  • 背景: 我的gmail账户不是服务账户。我正在编写一个PHP CLI应用程序,用于检查来自特定发件人和特定主题的电子邮件。假设此应用程序用于自定义域,但不是GSuite的一部分。我无法在服务器范围内控制我们域的电子邮件。 我正在使用自己的来自Google API门户的Auth文件。我修改了Quickstart中的代码,根据我的查询获取电子邮件,并获取我需要的特定电子邮件。(快速入门示例中的用户是“

  • 问题内容: 我正在尝试使用Python中的Selenium用我的GMail帐户自动登录,但出现此错误: 我的代码如下所示: 我该如何解决我的问题? 问题答案: 尝试更改网址。使用代替。 确保使用原始电子邮件和密码。并更改到每个元素。 您的代码将是:

  • 我想在我的datta上接收来自php web表单的邮件。dhonde@coreathena.com我在达塔收到同样的消息。dhonde@gmail.com但无法通过datta这样的非gmail帐户接收。dhonde@coreathena.com下面是我的代码

  • 在userpool中创建用户时,会使用临时密码发送用户邀请消息,但不会发送电子邮件验证消息 我创建了一个非常简单的设置来尝试aws cognito服务。下面是我在AWS cognito中所做的,我创建了一个用户池,一步一步地如下: 1)你想给你的用户池命名什么 - 现在,池创建后进入了通用设置-用户和组,单击创建用户A创建用户弹出窗口显示:用户名(必需): myEmail地址 向此新用户发送邀请?

  • 我正在尝试从应用程序发送电子邮件。 问题是Gmail不允许我进行身份验证,因为位置不寻常——当然,每个应用程序都安装在其他位置。 我的代码(使用Javax): 该代码在我的测试设备上运行良好,但在其他使用我的应用程序的设备上崩溃。 我得到的错误:javax.mail.身份验证失败异常:534-5.7.14请通过534-5.7.14您的网络浏览器登录,然后重试。534-5.7.14在534 5.7.