0

我知道这已经被问过很多次了,但我想具体一点。我曾经使用硒。谷歌搜索后,我可以通过控制台运行它,它给了我一堆文本输出,但我宁愿不解析它,我想要一个通过/失败类型的东西

每隔一段时间,我喜欢在 UI 而不是代码上运行我的所有单元测试。我不想提交具有某些值的表单,我想看看我是否单击此 img 是否会弹出它旁边的下拉框,如果我选择一个名称,它将是我将在运行后提交的表单其他几件事。

我喜欢这个的原因是某些功能必须始终工作,所以我可以在每次修改这些功能的 UI 时调整单元测试。剩下的,检查业务逻辑的代码中的单元测试就足够了,因为这些 UI 总是在变化或者不是很重要。

如果某些东西可以启动 firefox 和 chrome(或 webkit),那就太好了,但这不是必需的。

就像我说的我想要通过/失败,某种易于解析的文本。复杂测试没问题,因为我知道正则表达式,但我不想弄清楚一个单元测试何时结束或开始。

4

1 回答 1

1

如果您使用的是 java/maven - 我为 selenium 编写了一个 maven 插件,它应该可以满足您的需求:

https://github.com/willwarren/selenium-maven-plugin。您在 firefox + selenium 中生成测试,然后将文件保存到 maven 项目的目录中。

如果您不使用 maven,则可以使用我构建的项目:

http://code.google.com/p/selenium4j

从自述文件:

我们使用 selenium IDE 来记录我们的测试。然后我们以下列方式将测试用例保存到我们的项目中:(注意:目前来自 selenium4j 的代码只支持一个级别,所以不要嵌套你的文件夹)

./src/test/selenium
    |-signin
        |-LoginGoodPassword.html
        |-LoginBadPassword.html
        |-selenium4j.properties

我们没有保存测试套件,因为 maven 会负责查找您的测试。

selenium4j.properties 包含以下设置信息:

# the web site being tested
webSite=http://yourwebapp:8080

# A comma separated values of the WebDrivers being used. Accepted drivers: 
# HtmlUnitDriver, FirefoxDriver, ChromeDriver, InternetExplorerDriver
driver=FirefoxDriver

# How many times we want to iterate and test
loopCount=1

绑定到 process-test-resources 阶段的 selenium maven 插件然后将这些 html 文件转换为 src/test/java 文件夹中的 junit 4 测试。

所以你最终得到:

./src/test/java
    |-signin
        |-firefox
            |-LoginGoodPasswordTest.java
            |-LoginBadPasswordTest.java
于 2013-02-28T20:37:39.543 回答