【问题标题】:Selenium-How to find the exact text using selenium-eclipse-mozillaSelenium-如何使用 selenium-eclipse-mozilla 找到确切的文本
【发布时间】:2013-04-09 11:55:01
【问题描述】:

刚接触 Selenium RC,目前正在使用 Java 运行脚本。以下是场景

场景

我正在尝试登录我的应用程序,一旦我登录必须找到登录名/用户名。一旦我找到登录名/用户名,我将执行/单击不同的链接,否则注销。登录后我无法验证我真正想要的文本。

请在下面找到代码。

提前致谢。

导入 com.thoughtworks.selenium.DefaultSelenium; 导入 com.thoughtworks.selenium.Selenium;

公共类 TestRun {

    public static void main(String[] args) {

        Selenium selenium=new DefaultSelenium("localhost", 4444 , "*firefox","myurl");
        selenium.start();
        selenium.open("myurl");
        System.out.println("Open browser "+selenium);
        selenium.windowMaximize();
        selenium.type("id=j_username","Lal");
        selenium.type("name=j_password","lal");
        System.out.println(selenium.isElementPresent("id=j_username"));
        selenium.click("name=submit");
                    if(selenium.isTextPresent("Lal"))
        {
            selenium.click("id=common_header_logout");
        }
                    else
        {
            System.out.println("User not found");
        }


}

}

【问题讨论】:

    标签: java selenium automation


    【解决方案1】:

    如果之前的命令是单击,您需要等待一段时间才能使用“isElementPresent”。

    public static void main(String[] args) {

        Selenium selenium=new DefaultSelenium("localhost", 4444 , "*firefox","myurl");
        selenium.start();
        selenium.open("myurl");
        System.out.println("Open browser "+selenium);
        selenium.windowMaximize();
        selenium.type("id=j_username","Lal");
        selenium.type("name=j_password","lal");
        selenium.click("name=submit");
        **selenium.waitForPageToLoad("60000");**
        if(selenium.isTextPresent("Lal"))
        {
            selenium.click("id=common_header_logout");
        }
        else
        {
            System.out.println("User not found");
        }
    

    }

    【讨论】:

    • 非常感谢赫曼特。它起作用了。想要澄清一些事情。
    • 非常感谢赫曼特。它起作用了。想在启动我的硒服务器时做一些事情,每次我运行我的prg时,我都会得到不受信任的连接是firefox。因此,为了运行应用程序,我必须添加异常并确认安全异常,这是一项痛苦的任务。有没有办法摆脱它?提前致谢。
    • 您需要创建一个 firefox 配置文件来处理安全证书问题和其他事情。
    【解决方案2】:

    ================================================ ================

    用于在 Selenium 自动化中处理 SSL 证书异常的 Firefox 配置文件

    1. 确保所有 Firefox 实例都已关闭
    2. 点击开始>运行
    3. 键入“firefox.exe -ProfileManager -no-remote”
    4. 选择“创建配置文件”
    5. 点击下一步按钮。
    6. 输入新的配置文件名称(即 SeleniumProfile)
    7. 选择一个目录文件夹来存储您的新配置文件。
    8. 完成
    9. 点击“启动 Firefox”并配置设置。
    10. 在“查看\工具栏”选项卡中,取消选中“书签工具栏”
    11. 从工具栏中右键单击,然后单击“自定义”。
    12. 将“Google 搜索”拖到“自定义工具栏”窗口中,将其删除
    13. 在“自定义工具栏”窗口中,单击“使用小图标”复选框,然后点击“完成”
    14. 单击“工具\选项”,然后设置以下内容: 一个)。 “主”标签

      • 将主页设置为“about:blank”
      • 取消选中“显示下载..”选项

      b)。 “标签”标签

      • 为新页面选择“新窗口”
      • 取消选中所有警告选项

      c)。 “内容”标签

      • 取消选中“阻止弹出”窗口选项

      d)。 “隐私”标签

      • 取消选中所有“历史记录”选项

      e)。 “安全”标签

      • 取消选中所有“安全”选项
      • 点击“设置”并取消选中所有警告选项

      f)。 “高级”标签

      • 取消选中“常规”选项卡中的“自动滚动”选项
      • 取消选中“更新”标签中的“警告我……”和“搜索引擎”选项
    15. 打开有证书错误的站点。当发生以下步骤的错误时

      • 添加异常:选择加密,单击 ViewCertificate 并单击 AddException 在位置输入“https://cretificateurl.com”并获取证书,然后单击 “确认安全例外”并按确定。
    16. 在地址栏中输入“about:config”并通过右键单击任意位置添加以下内容 在页面上并选择“新建”

      • extensions.update.notifyUser (type=boolean; value=false)
      • extensions.newAddons (type=boolean; value=false)
    17. 使用运行 selenium 服务器 java -jar selenium-server.jar -firefoxProfileTemplate ""

    【讨论】:

    • 尝试了上述步骤,但@步骤 15 我没有得到任何 AddException 类型。我刚刚确认了安全异常并继续下一步。但是现在,如果我在重新启动服务器后运行我的脚本 tru eclipse,我仍然每次都会得到这个不受信任的站点。
    • Rajeev 用于在第 15 步中添加异常,您可以按照以下步骤操作:将安全证书 url 粘贴到以下路径:Mozila-> 选项-> 高级-> 查看证书-> 服务器-> 添加异常
    • Hemant- 尝试在第 15 步添加它,但面临相同的问题。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-05-09
    • 2016-04-22
    • 1970-01-01
    • 2020-09-24
    • 2019-08-16
    • 1970-01-01
    相关资源
    最近更新 更多