0

我正在为一个希望我进行 selenium/junit 测试的客户工作,但整个用户界面没有显示任何 html 代码的 id 或页面的标题,只是像“欢迎来到......”这样的内容,如何例如,您要检查一个是在主页上还是在登录页面上?

这是一个html示例:

<div class="site-body m-welcome" data-module="welcome">
<div class="inner">
  <h1 class="starred dark"><span>Welcome to ...</span></h1>

  <div class="choices">
    <div class="choice">
      <a href="http://www.alink/account/validate/driver" class="btn btn-primary">Become a xxxxx</a>
    </div>

    <span class="or"><span>Or</span></span>

    <form action="http://www.alink/welcome" method="post" class="choice" data-response-type="json">
              <input type="text" name="plate_number" id="car_plate_validation_plate_number" value="" maxlength="8" class="plate required numberplate" placeholder="Enter number plate">

      <button type="submit" class="btn btn-primary">Become an yyyyy</button>

      <div class="invalid-message inline-modal" data-behavior="modal">
        <h1>Sorry - you are not eligible to join the company</h1>


        <p>See <a href="#">am I eligile?</a> for full eligibility critera.</p>
      </div>
    </form>
  </div>
4

2 回答 2

1

您可以使用 XPath 查找几乎所有元素,我不会经常使用它,但在您的情况下(没有任何 ID),您可能需要经常使用它:

IWebElement element = driver.FindElement(By.XPath, "//*[text='Welcome in ...']");

这将为您提供任何类型的第一个元素,其中包含“Welcome in ...”文本

为了检查您是否在某个页面上,我想您必须搜索该页面独有的元素,而不是其他页面。

如果您想要更具体的示例,您需要向我们展示一些 HTML。

于 2012-05-31T08:52:02.073 回答
0

html示例:

    <div class="site-body m-welcome" data-module="welcome">
    <div class="inner">
        <h1 class="starred dark"><span>Welcome to ...</span></h1>

        <div class="choices">
            <div class="choice">
                <a href="http://www.alink/account/validate/driver" class="btn btn-primary">Become a xxxxx</a>
            </div>

            <span class="or"><span>Or</span></span>

            <form action="http://www.alink/welcome" method="post" class="choice" data-response-type="json">
                                <input type="text" name="plate_number" id="car_plate_validation_plate_number" value="" maxlength="8" class="plate required numberplate" placeholder="Enter number plate">

                <button type="submit" class="btn btn-primary">Become an yyyyy</button>

                <div class="invalid-message inline-modal" data-behavior="modal">
                    <h1>Sorry - you are not eligible to join the company</h1>


                    <p>See <a href="#">am I eligile?</a> for full eligibility critera.</p>
                </div>
            </form>
        </div>
于 2012-05-31T08:56:52.590 回答