【问题标题】:Selenium Test Runner and variables problemSelenium Test Runner 和变量问题
【发布时间】:2010-05-21 19:52:11
【问题描述】:

在我的 selenium 测试套件 (html) 中,我定义了第一个测试用例来初始化在下一个测试用例中调用的变量。

示例:

在第一个脚本中:

store|//div[@id="myfield"]|myvar

在我的第二个脚本中:

type|${myvar}|myvalue

但是当我启动测试运行器(来自 maven)时,它返回一个错误,告诉你 ${myvar} 没有找到 不使用存储的 var 中包含的值。

有什么建议吗?

比很多

【问题讨论】:

    标签: testing selenium automated-tests integration-testing


    【解决方案1】:

    也许您可以使用 cookie 来存储变量?

    createCookie 在 selenium 中,要阅读它,您可以使用 javascrpt(getEval)

    【讨论】:

      【解决方案2】:

      据我所知,在运行 HTML 套件时,您不能引用在不同测试中声明的变量。

      您需要的是测试和/或套件“设置”和“拆卸”功能。

      测试设置和拆卸发生在每次测试之前和之后。套件设置和拆卸只发生一次,在套件运行之前和之后。

      由于您使用的是 Maven,我假设您的开发是使用 Java 进行的,因此您可以使用 JUnit

      http://www.junit.org/

      这有测试和套件设置和拆卸:
      测试设置
      http://kentbeck.github.com/junit/javadoc/latest/org/junit/Before.html
      测试拆解
      http://kentbeck.github.com/junit/javadoc/latest/org/junit/After.html

      套件设置
      http://kentbeck.github.com/junit/javadoc/latest/org/junit/BeforeClass.html
      套件拆解
      http://kentbeck.github.com/junit/javadoc/latest/org/junit/AfterClass.html

      【讨论】:

      • 嗨,我不想使用 JUnit,因为所有 selenium 脚本都是由非开发人员记录的,将 1000 多个脚本从 html 转换为 java 代码非常耗时。因此,用户创建了一个测试套件,将其放入存储库 svn 中,持续集成工具将测试作为 htmlSuite 运行。
      【解决方案3】:

      我在 Selenium IDE 中创建了单独的测试,然后在测试套件中对它们进行批处理

      之后...当我运行它们时,存储在测试 1 中的 ${variable_name} 在测试 2 中运行良好。

      达米安

      【讨论】:

        【解决方案4】:

        当前版本的 selenium 测试运行程序不会像 IDE 那样将变量从一个测试传递到另一个测试。有一个 javascript 解决方法,请查看 Nick G 在http://jira.openqa.org/browse/SEL-605 上的帖子

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2017-10-30
          • 1970-01-01
          • 1970-01-01
          • 2021-05-27
          • 1970-01-01
          • 1970-01-01
          • 2012-07-10
          • 1970-01-01
          相关资源
          最近更新 更多