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

Selenium Webdriver-相对xpath

宗政颖逸
2023-03-14

我是硒的初学者。我没有任何实践经验。上个月,我报名参加了硒初学者高级课程,在那里我几乎没有可以动手的活动。

我被困在某个地方。让我解释一下我的问题。

以下是活动描述:

相对论

URL:http://webapps.tekstac.com/Shopify/

测试程序:

  1. 使用模板代码
  2. 不要在DriverSetup文件中进行任何更改
  3. 仅在建议的部分中,将代码添加到
  4. 使用DriverSetup()中定义的getWebDriver()方法调用驱动程序
  5. 使用xpath定位器标识值“SivaKumar”的web元素并返回
  6. 使用相同的web元素,获取文本并返回它

我为此编写的代码:

//Add required imports
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.By;
import org.openqa.selenium.WebElement;

public class RelativeXpathLocator    //DO NOT Change the class Name
{
    static String baseUrl = "http://webapps.tekstac.com/Shopify/";
    public WebDriver createDriver()    //DO NOT change the method signature
    {
        DriverSetup ds = new DriverSetup();
        return ds.getWebDriver();
       //Implement code to create Driver from DriverSetup and return it
    }
    public WebElement getRelativeXpathLocator(WebDriver driver)//DO NOT change the method signature
    {
        WebElement l = driver.findElement(By.xpath("//*[@id="tbrow"]/td[3]"));
        return (l);
       /*Replace this comment by the code statement to get the Web element */
       /*Find and return the element */
       
    }
    public String getName(WebElement element)//DO NOT change the method signature
    {
        //Get the attribute value from the element and return it
    }

    public static void main(String[] args){
        RelativeXpathLocator pl=new RelativeXpathLocator();
        //Add required code
        
    }
}

注意:停留在公共Webelement GetRelativeExpathLocator

现在,在我键入代码并进行编译以检查它是否引发任何错误后,我可以看到expect““”xpath行中出现错误。

我已经努力了几个小时,想让它发挥作用,但徒劳无功。

请给出建议。

谢谢

共有1个答案

葛鸿轩
2023-03-14

错误是xpath中的双引号,因此更改xpath

driver.findElement(By.xpath("//*[@id="tbrow"]/td[3]"));

driver.findElement(By.xpath("//*[@id='tbrow']/td[3]"));
 类似资料:
  • 问题内容: 今天,当我使用Selenium WebDrive时,出现错误。我的平台是mac osx。这是我的异常日志。 我不知道为什么会这样。我的Firefox路径是默认路径。谢谢您的帮助!! 问题答案: WebDriver使用端口7054(“锁定端口”)作为互斥体,以确保我们不会同时启动两个Firefox实例。您创建的每个新实例将在启动浏览器之前等待互斥体,然后在浏览器打开后立即释放互斥体。 因

  • 问题内容: 我的网站上有一个选择控件。我正在使用页面对象与页面进行交互。如果我这样做(在我的课程下的前两行和我的方法中) 它以空指针失败。我也尝试了没有。 现在,如果我在我的方法中执行此操作,则一切正常,然后选择正确的项目 这是该控件的实际网页摘要(已编辑以保护无辜者) 让我说我可以解决我的问题, 但是 我不明白为什么“ 正常 ”路径无法正常工作。 问题答案: 那是因为该类具有以下构造函数: 见J

  • 问题内容: 我一直在为FF写我的脚本,但希望他们所做的工作很少,它们也可以在其他浏览器上运行,但是IE驱动程序似乎存在按钮问题? 我在按钮上有一个简单的webelement.click(),不会引发错误,但不单击按钮。在FF它的罚款。我可以获取文本,获取价值,所以我知道find语句是可以的,只是不会单击它。 想法或帮助会很棒 只是做 HTML-控件上有3个按钮,我现在只对登录感兴趣 问题答案: 遇

  • 我实际上有三个问题: Selenium WebDriver如何实现此 因为我们不能给无限睡眠的线程一个负值。 有没有更好的方法来实现无限等待? 我们在SeleniumWebDriver文档中看到了这一点

  • 位置路径指定XML文档中节点的位置。路径可以是绝对路径或相对路径。 如果位置路径以选择的节点开始,则它是相对路径。 以下是使用相对路径定位元素的几个示例。 - 选择与节点相关的名字。 示例 在这个例子中,我们创建了一个示例XML文档students.xml,及其样式表文档students.xsl,它使用了XPath表达式。 以下是使用的示例XML。文件:students.xml - 文件:stud

  • 在布局资源XML中,我有3个RelativeLayout(s)位于主RelativeLayout内部。视图将垂直显示。这3个RelativeLayout()被设置在一起,我希望它们填充整个屏幕,而不是屏幕大小。我的,布局视图: 我为每个relativeLayout设置了和并且这个技术适用于按钮,我以为relativeLayout也是一样的,看来我的想法错了。知道吗? UPD1:我添加了我想要的图片